NSIS调用delphi的dll

Yothan 2010-12-07 12:12:26
用delphi写了一个dll,TestUpdate.dll,需要传入三个参数,原型为:
function TestUpdate(Param1, Param2, Param2: PChar): Integer; stdcall;

NSIS调用dll的方法使用 system::Call的方法,看了文档,始终没有参透这个函数的使用方法
我的调用:
StrCpy $R1 "ProductID"
StrCpy $R2 "INSTDIR"
StrCpy $R3 "NAME"
messagebox MB_OK "$R1, $R2, $R3"
System::call "$INSTDIR\TestUpdate.dll::TestUpdate(t '$R1', t '$R2', t '$R3') i(.r1).r4"
SetPluginUnload manual
System::Free 0
messagebox MB_OK "$4, $1, $2,$3"

多个参数用这种方法传递进去始终不对,可有达人指点?
...全文
160 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
johnnyitsoft 2011-06-20
  • 打赏
  • 举报
回复
能给出例子吗,用C# 写的一个dll nsis 怎么都调用不到
Yothan 2010-12-17
  • 打赏
  • 举报
回复
如2楼所说,已经解决!
NSIS文档乍一看还真看不明白。
亮剑_ 2010-12-14
  • 打赏
  • 举报
回复
这个要以NSIS的文档为准
Judon 2010-12-14
  • 打赏
  • 举报
回复
System::call "$INSTDIR\TestUpdate.dll::TestUpdate(t '$R1', t '$R2', t '$R3') i(.r1.r2.r3).r4"
keeley20 2010-12-08
  • 打赏
  • 举报
回复
NSIS是那个打包软件? 没用过,你可以试着把这个函数写成只有一个参数的。

830

社区成员

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

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