
……这样:
用c / c创建一个dll
#include "MemTestDll.h"extern "C" EXPORTAPI char* __cdecl test(){ char* str=new char[1024*1024*2]; return str;} 然后在德尔福:
function test():PAnsiChar; cdecl; external 'MemTestDll.dll';procedure TForm3.btn3Click(Sender: TObject);var ptr:PAnsiChar;begin ptr:=test(); //FreeMem(ptr); // crash //SysFreeMem(ptr) //crash tooend;
我看到任务管理器,每次点击都会泄漏8 KB内存.
>我如何发布ptr? FreeMem这个指针会使应用程序崩溃
>我在C/C++ dll中分配1024 * 1024 * 2字节,为什么它显示泄漏8KB?
以上是内存溢出为你收集整理的如何在delphi应用程序中释放c dll中的内存分配全部内容,希望文章能够帮你解决如何在delphi应用程序中释放c dll中的内存分配所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)