动态加载C++编写的DLL的问题

beil0eve 2006-10-02 11:42:47
C++的DLL 函数

BOOL WINAPI Write();

我是这样调用的

Twrite= function ():integer;

Moudle:=loadlibrary('xxx.dll');
try
if Moudle>32 then
@Write:= GetProcAddress(moudle,'Write');
if not( @Write = nil ) then
id:=Write;
showmessage(inttostr(id));
if id=0 then
showmessage('不成功')
else
showmessage('成功');
finally
FreeLibrary(moudle);
end;


请问这样调用对不对
执行结果i=1 显示成功
我想应该是成功了吧 但没能实现想要的效果
...全文
263 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
do2008 2006-10-03
  • 打赏
  • 举报
回复
最好还是单步跟踪你的代码吧,

id这个变量,初始化了没有,是否确定调用了id:=Write;

如果确定调用了,那就检查一下dll中的函数吧
老之 2006-10-02
  • 打赏
  • 举报
回复
试下:

Twrite= function ():integer;stdcall;

Moudle:=loadlibrary('xxx.dll');
try
if Moudle>0 then
@Write:= GetProcAddress(moudle,'Write');
if @Write <> nil then
id:=Write;
//......

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧