一个动态链接库的指针错误,请高手指点一下,谢了 我在一个动态链接库中调用了另一个一个动态链接库,结果出现了指针的错误,原来直接用的时候,是不出错的,请高手指点一下,谢了.我的QQ:2975273。http://www.365bar.com/mmc/prog.rar 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 在uses加Sharemem,并且放在第一个,如uses Sharemem,Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;调用程序和DLL都要这么做,你可以改用PCHAR,就不用加SHAREMEM了我测了一下,加了以后运行没有问题,可关闭时有问题,你看一下你的程序。 不是的老大,不加也没有问题的,整个调用之后出的问题,这是不是Dll调Dll的原因呢?? 我看你的应用程序在点button时就出现无效的指针错误,加了以后就没问题了,只是关闭时有问题,你的程序到底在什么地方出问题。 dll单元的上面不是有说明吗?传送字符串必须用pchar or ShortString.改动如下:uses ShareMem, //放在第一个.function Ping(IPAddr:String;TimeOut:Word): pchar // 返回 pchar; result:=pchar(....); // 赋值我调试了一下没有问题了。 你看到for循环了吗??你在这里可以看到,开始是不出错的,只是在Dll调用退出之后出错,如果不把它写成dll,直接调用'ICMP.dll'是不出错的,这真的好奇怪 你可以搜一下我以前的一个帖子,我也是在DLL里调用DLL,结果老出错,然后我就去查了N本DELPHI书,有些没有提及这个问题,有些是说DLL调DLL可能会出问题,但没说肯定有问题,我发帖子后也没人回答。 findcsdn(findcsdn):老大你说的对,我原先也看到过这方面的介绍说是string类型在DLL中有时会出错,没想到今天真的发生到了我的身上,我会记住的,刻骨铭心的一次错误!!同时感谢大家对我的帮助!!谢了!结帐!!! 新人求助,成功马上结贴,求最简单打擂台不重复PK算法。 大哥哥,大姐姐,点阵:如何将输入的文字转换成指定大小的点阵? delphi程序能否控制rave报表,让条码自动生成? 远程办公系统开发 初到此版,向各位请教一下 大型系统的数据库的数据量过多的处理方法问题!谢谢! 怎样在DBGridEh表格控件中实现下拉表格控件 高分求解:200分关于串口的问题 关于报表制作的问题 如何获得串口的状态呢? 怎么使dbgird的数据可以不即时更新,也就是说要可以控制它的写入(用一个按钮)? 关于把Excel中的数据导入到数据表中的问题(在线给分)
uses
Sharemem,Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;调用程序和DLL都要这么做,你可以改用PCHAR,就不用加SHAREMEM了
我测了一下,加了以后运行没有问题,可关闭时有问题,你看一下你的程序。
这是不是Dll调Dll的原因呢??
uses
ShareMem, //放在第一个.function Ping(IPAddr:String;TimeOut:Word): pchar // 返回 pchar;
result:=pchar(....); // 赋值我调试了一下没有问题了。
你在这里可以看到,开始是不出错的,只是在Dll调用退出之后出错,
如果不把它写成dll,直接调用'ICMP.dll'是不出错的,这真的好奇怪
老大你说的对,我原先也看到过这方面的介绍说是string类型在DLL中有时会出错,没想到今天真的发生到了我的身上,我会记住的,刻骨铭心的一次错误!!
同时感谢大家对我的帮助!!
谢了!
结帐!!!