BDE相关问题
本来刚上班,老总给了个N年前的系统,让我把数据库连接从bde改成ado,我用bcb6.0编译老系统,总是报错,错误提示如下:[C++ Error] BDE.hpp(4159): E2015 Ambiguity between 'PLongint' and 'System::PLongint'
[C++ Error] BDE.hpp(4222): E2015 Ambiguity between 'PLongint' and 'System::PLongint'
当然还有其它很多错误提示,先说这个吧。双击错误提示,打开BDE.pp文件,跳转到
extern PACKAGE Word __stdcall DbiBatchMove(pBATTblDesc pSrcTblDesc, hDBICur hSrcCur, pBATTblDesc pDstTblDesc, hDBICur hDstCur, eBATMode ebatMode, Word iFldCount, PWORD pSrcFldMap, char * pszIndexName, char * pszIndexTagName, Word iIndexId, char * pszKeyviolName, char * pszProblemsName, char * pszChangedName, PLongint lProbRecs, PLongint lKeyvRecs, PLongint lChangedRecs, BOOL bAbortOnFirstProb, BOOL bAbortOnFirstKeyviol, int &lRecsToMove, BOOL bTransliterate);
在PLongint 上右键打击打开定义 跳转到 sysmac.H文件中typedef int* PLongint ;这一行,请教这是怎么回事?麻烦前辈们了。
[解决办法]
开BDE.hpp文件
把所有的PLongint 改成 System::PLongint
文件是只读的话,改成可写
保存,编译
[解决办法]
那你在 PLongint 前加一个 System::PLongint就可以了。