请教关于DLL中string参数传递的问题。谢谢 And the BORLNDMM.DLL must be deployed along with your DLL. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 使用BORLNDMM.DLL不方便,分发时要多一个DLL。改用PChar返回不算麻烦,DLL内部还是可以用string运算,只是在返回值时转换成PChar,这里有个问题就是内存分配的问题,即PChar的内存由DLL分配还是Caller分配。 在Dll中加入 uses ShareMem,那是自动管理DLL中的内存分配? “DLL内部还是可以用string运算,只是在返回值时转换成PChar”这样,要是转换不好,仍然可能出问题的!或者使用widestring,尤其是在COM中,widestring是WINDOWS标准传递参量之一。(题外话,我自己却宁可使用Variant/OleVariant) 方法1:在Dll程序及调用该Dll的程序的项目文件的use子句的最前面加入ShareMem,发布程序时加上BORLNDMM.DLL;方法2:改用Pchar处理,自己调用GetMem,FreeMem等函数执行相关的内存管理工作;本人倾向于第2种方法,方便发布管理,也方便其它开发工具的调用; 为什么DBGridEh1的Footer汇总,用PrintDBGridEh1打印不出来? drawicon函数与调色板间的关系 cxgrid 的问题? try问题请教 请大家说说用什么能够存储各种类型的数据? 用Delphi6.0做一个VCL控件”直线“,请教方法?在线等 在Delphi中用感知控件好还是直接通过代码显示数据到Edit好?1 那位哥们知道武汉恒普软件,版主别删! 帮我看看为什么不能附值? 请高手赐教!!!(熟悉ADO的) 帮帮忙!能否通过delphi的webbrowser控件读取网页的源文件信息。60送上! 如何在窗体上点击右键激活弹出菜单
“DLL内部还是可以用string运算,只是在返回值时转换成PChar”这样,要是转换不好,仍然可能出问题的!或者使用widestring,尤其是在COM中,widestring是WINDOWS标准传递参量之一。(题外话,我自己却宁可使用Variant/OleVariant)
方法2:改用Pchar处理,自己调用GetMem,FreeMem等函数执行相关的内存管理工作;
本人倾向于第2种方法,方便发布管理,也方便其它开发工具的调用;