NSIS安装包调用C写的DLL问题

lchy110 2011-07-15 10:54:47
用NSIS做安装包的时候有碰到需要调用C写的动态库
动态库里有个函数原型:
int ConnectDB(char *szIP, char *szUser, char* szPassWord, char* szDB, char *szPort)

在NSIS里能调用到这个DLL 但参数获取不到,估计是参数是指针问题 有参考了这里的方法,但一直没成功

NSIS调用调用

  
strcpy $0 "172.18.14.13"
strcpy $1 "root"
strcpy $2 "root"
strcpy $3 "mysql"
strcpy $4 "3306"
System::Call 'VS2005MFCDll::ConnectDB(*i,*i,*i,*i,*i) i(.r0,.r1,.r2,.r3,.r4) .r8'


附:调用不是指针的函数能正确执行
...全文
360 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
见习学术士 2011-07-15
  • 打赏
  • 举报
回复
这个没用过,我一般都是将外模块写成EXE,再在NSIS调用
ExecWait,这个也是可以带参数的
你也可以换个思路
lchy110 2011-07-15
  • 打赏
  • 举报
回复
在NSIS里 不知道怎么去确定指针大小 貌似没那说法 呵呵 NSIS我也是刚学会用
呔妖怪来嘛 2011-07-15
  • 打赏
  • 举报
回复
指针大小不确定?
lchy110 2011-07-15
  • 打赏
  • 举报
回复
恩 谢谢楼上的 但这个估计没那么方便 因为我要调用这个DLL的几个方法

现在是只要用指针类型 C函数里获取到的就是乱码

1,658

社区成员

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

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