Inno设置,从光盘慢

时间:2012-06-10 11:45:11

标签: installer windows-installer inno-setup

我正在使用Inno Setup Compiler 5.4.3。创建安装应用

我的应用程序具有以下结构:

  • APP.EXE
  • 数据

数据是我保存所有应用相关文件(jpg图像)的文件夹。该应用程序将从CD-ROM分发。使用向导创建安装后,我得到一个文件大小为300Mb。

问题是系统需要2-3分钟才能从CD打开它。我想这是因为文件大小。如果安装程序没有任何响应,那就太多了。

这种情况有一些简单的解决方案吗? 我不需要压缩文件,如果我可以使安装程序结构看起来与app结构相同(不只有一个文件......),我会很好。任何能使其表现更快的解决方案都会很好。

谢谢, 韦德兰

更新: 以下是我的文件设置的样子:

[Files]
Source: "C:\data\palacabencic\bin\PalacaBencic.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "{src}C:\data\palacabencic\bin\data\*"; DestDir: "{app}\data"; Flags: external

如果我尝试放置{src}和外部:

Source: "{src}C:\data\palacabencic\bin\data\*"; DestDir: "{app}\data"; Flags: external

它不会在安装程序文件夹中添加数据文件夹,它只创建安装文件

3 个答案:

答案 0 :(得分:3)

[Files]部分记录中指定external标记。请注意:

  

指定外部标志时,Source必须是完整路径名   分发媒体上的现有文件(或通配符)或   用户的系统(例如“{src} \ license.ini”)。

这样的事情应该阻止将文件包含在输出设置文件中:

[Files]
Source: "{src}\Image.jpg"; DestDir: "{app}"; Flags: external

答案 1 :(得分:3)

您的问题是资源管理器尝试在启动它之前查找/验证安装程序可执行文件上的代码签名证书。由于文件很大,它甚至在尝试运行它之前至少读取整个文件一次。 这与导致图标无法显示的Inno KB article中记录的问题相同。

解决方案是在数据文件上使用external标志(由TLama建议),或使用磁盘跨度将设置拆分为主设置和数据文件。

答案 2 :(得分:0)

当您使用external标志时,您告诉Inno要复制用户系统上未压缩的文件(在您的情况下,在CD上)。 {src}指定相对于setup.exe本身的路径。

[Files]
Source: "C:\data\palacabencic\bin\PalacaBencic.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "{src}\data\*"; DestDir: "{app}\data"; Flags: external

编译的输出只是安装程序,但在将此数据文件和数据文件复制到CD后,它会在运行安装程序时将两者都复制到最终安装路径。