无法使用fastMM4使用C ++ Builder XE7项目

时间:2017-10-04 09:28:56

标签: c++builder fastmm

我试图让fastMM4与C ++ Builder XE7应用程序一起工作,但我还没有成功。

为了测试fastMM4我创建了一个非常简单的vcl应用程序,我有意创建了内存泄漏。然后我按照FastMM4BCB.cpp中给出的说明进行操作。 首先,我在编译FastMM4BCB.cpp时遇到了问题:

[bcc64 Error] FastMM4BCB.cpp(2024): 
assigning to 'GetMemFunc' (aka 'void *(*)(int) __attribute__((fastcall))') 
from incompatible type 'void *(*)(NativeInt) __attribute__((fastcall))': 
type mismatch at 1st parameter ('int' vs 'NativeInt' (aka 'long long'))

[bcc64 Error] FastMM4BCB.cpp(2026): 
assigning to 
'ReallocMemFunc' (aka 'void *(*)(void *, int) __attribute__((fastcall))') 
from incompatible type 'void *(*)(void *, NativeInt) __attribute__((fastcall))': 
type mismatch at 2nd parameter ('int' vs 'NativeInt' (aka 'long long'))

但是,我通过禁用DetectMMOperationsAfterUninstall文件中的选项FastMM4Options.inc来摆脱这些问题。但这真的不是必要的吗?

当我得到它进行编译并且我可以运行我的应用程序时,我得到一个弹出窗口,指出“由于另一个第三方内存管理器已经安装了自己,因此无法安装FastMM4。”

我试图谷歌为什么会发生这种情况,但我发现只需要取消选中动态RTL的使用,我需要在使用FastMM4BCB.cpp和{{{{}}之前使用pragma链接USEFORM。 1}}需要成为项目中的第一个单元。我想我已经这样做了。你能告诉我这个弹出窗口出现的原因吗?

0 个答案:

没有答案