单个可执行文件包括所有程序文件和带有nsis的文件夹?

时间:2014-09-19 08:08:31

标签: installation nsis

我的zip文件包含我的安装文件。我正在解压缩这个zip并将这些文件复制到安装目录中,其脚本如下所示:

ZipDLL::extractall "$OUTDIR\demo.zip" "C:\myapp\demo\"

如果我从$OUTDIR删除zip文件,则安装程序无法按预期找到zip文件。我想要做的是将此zip或其提取的文件夹嵌入到exe本身中。我添加了

File -r "$OUTDIR/demo"

但是这个脚本效果不好。

1 个答案:

答案 0 :(得分:2)

  • 当您使用ZipDll插件时,您指的是要处理的文件(demo.zip),方法是使用其在运行时位置:沿installer.exe。
  • 当您使用File语句将某些文件嵌入到生成的安装程序中时,您需要在编译时使用位置来引用这些文件。

$OUTDIR语句中的File替换为相对于.nsi脚本的路径。

顺便说一句,你应该养成检查编译日志的习惯,当编译时路径不正确时,NSIS可能会告诉你这类问题。