Function 在C++ Builder下使用Delphi组件调用错误函数
我正在尝试使用Graphics32软件包。Graphics32的编译和安装没有任何问题。 当我尝试在C++ +Builder XE3下执行调试跟踪代码时Function 在C++ Builder下使用Delphi组件调用错误函数,function,delphi,components,c++builder,graphics32,Function,Delphi,Components,C++builder,Graphics32,我正在尝试使用Graphics32软件包。Graphics32的编译和安装没有任何问题。 当我尝试在C++ +Builder XE3下执行调试跟踪代码时 TBitmap32* bmp = new TBitmap32(); bmp->LoadFromFile("d:\\sample.bmp");//This calls SaveToStream instead of LoadFromFile ... 它调用另一个成员函数SaveToStream,我可以在调试过程中跟踪并逐步执行该函数,直到
TBitmap32* bmp = new TBitmap32();
bmp->LoadFromFile("d:\\sample.bmp");//This calls SaveToStream instead of LoadFromFile
...
它调用另一个成员函数SaveToStream,我可以在调试过程中跟踪并逐步执行该函数,直到AV上升
我以前从未遇到过这样的行为。
是否有我遗漏的任何编译器指令或一些解决方法来进行适当的函数调用
更新:我使用来自SVN的Graphics32源代码。如果我使用之前的代码,一切都很好。听起来像是Delphi编译器如何生成VTABLE条目和C++Builder编译器如何访问它们之间的差异。事实上,奇怪的是,他们通常很善于保持同步。另一方面,显示上一个Graphics32版本是2年前发布的,目前还不正式支持XE3和更高版本,因此您在XE3中编译的包文件可能存在问题。我使用svn的源代码。如果我使用2122修订版之前的代码,一切都会很好。当你在早期版本和最新版本之间进行比较时,项目文件或类声明中有什么不同吗?@RemyLebeau,正如我们在上一篇文章中看到的,在单位上有一些小的变化。我唯一怀疑的是新的类函数声明。您可能必须向Graphics32作者提出这个问题。