问题描述
我的程序在装有ISSkin的计算机上安装得很好.然后,我尝试在没有安装ISSkin的另一台计算机上安装程序,并在安装后收到以下消息:运行时错误(-1:0):无法导入dll:c:\ Folder00 \ ISSkin. dll".
My program installs fine in my computer, which has ISSkin installed. I tried then to install my program in a different computer that has not got ISSkin installed and I get this message upon installation : "Runtime error (at -1:0): Cannot import dll:c:\Folder00\ISSkin.dll".
我在网上搜索,但到目前为止没有任何搜索.我的INNO中有以下代码:
I searched on the net but nothing so far. I have the following code in my INNO:
[Files]
Source: "c:\Folder00\ISSkin.dll"; DestDir: {tmp}; Flags: dontcopy; Attribs: hidden system
[Code]
procedure LoadSkin(lpszPath: String; lpszIniFileName: String); external 'LoadSkin@c:\Folder00\ISSkin.dll cdecl';
procedure UnloadSkin();
external 'UnloadSkin@c:\Folder00\ISSkin.dll cdecl'
我正在使用* .cjstyles皮肤进行innosetup.我从STDCALL更改为CDECL,但无济于事.有人遇到过这个问题,如何解决?
Im am using a *.cjstyles skin for the innosetup. I changed from STDCALL to CDECL but to no avail. Has anyone had this problem and how it can be solved?
推荐答案
您正在将dll解压缩到临时文件中,但尝试从某些'c:\ folder00 \'加载它,该文件很可能不会存在于目标计算机.
You're extracting the dll to temporary files but trying to load it from some 'c:\folder00\', which most probably won't exist in the target computer.
按照产品页面上的示例,就可以了.链接的示例中的相关内容:
Follow the example on the product page and you'll be fine. Relevant pieces from the linked example:
[Files]
Source: ISSkin.dll; DestDir: {app}; Flags: dontcopy
Source: Office2007.cjstyles; DestDir: {tmp}; Flags: dontcopy
[Code]
procedure LoadSkin(lpszPath: String; lpszIniFileName: String); external 'LoadSkin@files:isskin.dll stdcall';
function InitializeSetup(): Boolean;
begin
ExtractTemporaryFile('Office2007.cjstyles');
LoadSkin(ExpandConstant('{tmp}\Office2007.cjstyles'), '');
Result := True;
end;
这篇关于运行时错误(位于-1:0):无法使用InnoSetup导入ISSkin.dll的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!