nne*_*vod 1 c++ dll inno-setup dllimport
我在innosetup安装脚本中导入C++ DLL.DLL代码如下:
void __stdcall SetFbParam(char *dbFileName,char *dbTableName,char *dbParamName,char *dbParamValue){
//of no use here and doesn't change anything}
Run Code Online (Sandbox Code Playgroud)
在Innosetup中,我使用导入它
procedure FBset(dbFileName,dbTableName,dbParamName,dbParamValue: String;);
Run Code Online (Sandbox Code Playgroud)
external 'SetFbParam@files:MyDll.dll stdcall setuponly';
但是,我总是启动安装程序的过程中得到一个运行时错误,说这不能导入我的DLL.我尝试了各种调用约定,但总是失败.如果它是任何重要的,我在(安装程序请求权标高和崩溃后),运行Win7的X64与UAC.
确切的消息是:
错误
运行时错误(在-1:0):
无法导入
DLL:C:\ Users\Nevod\AppData\Local\Temp\is-6LOEC.tmp\MyDll.dll
dll就在那里.
谢谢!
小智 6
MyDll.dll是32位吗?
MyDll.dll是否依赖于同一目录中的任何其他DLL?如果是这样,您需要在"MyDll.dll"之后列出这些DLL的名称,以确保在加载MyDll.dll 之前解压缩它们,并且您可能还需要"loadwithalteredsearchpath"选项.帮助示例:
procedure ADllFunc(hWnd: Integer; lpText, lpCaption: String; uType: Cardinal);
external 'ADllFunc@files:A.dll,B.dll stdcall loadwithalteredsearchpath'; //A.dll depends on B.dll
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4999 次 |
| 最近记录: |