我有一个使用D2007编译的DLL,其中包含返回AnsiStrings的函数。
我的应用程序是在D2009中编译的。当它调用AnsiString函数时,会得到垃圾数据。
我创建了一个小型的测试应用程序/DLL来进行实验,并发现如果应用程序和DLL都使用相同版本的Delphi(无论是2007还是2009)进行编译,则没有问题。但是当一个编译于2009年,另一个编译于2007年时,我得到了垃圾数据。
我尝试在两个项目中都包含最新版本的FastMM,但即使如此,2009年的应用程序也无法从2007年的DLL中读取AnsiStrings。
这里出了什么问题?有没有办法解决这个问题?