将非电子文件夹包含在NSIS安装中

问题描述 投票:0回答:1

我一直在尝试为电子安装程序添加其他功能,在这里我复制了安装程序中打包的一些文件,但是当我尝试编译电子项目以创建安装程序时,我收到了一个非描述性错误,即我得到:

* writing effective config
* packaging
* building
x [object Object]

这是我的脚本的样子:

!macro customInstall
  Rename "$APPDATA\myfolder\img" "$APPDATA\myfolder\img-old"
  SetOutPath "$APPDATA\myfolder"
  File /nonfatal /a /r "additional_files\*"
  CreateShortcut "$SMSTARTUP\mylink.lnk" "$INSTDIR\mylink.exe"
!macroend

基本上,除文件复制部分外,其他所有东西都起作用。当我删除该部分时,项目将毫无问题地构建并编译到安装程序中。

我还尝试使用CopyFiles代替SetOutPathFile,当我将additional_files文件夹放置在与安装相同的文件夹(dist文件夹)中时,它按预期工作,但是希望将该文件夹打包在安装程序中。但是,我无法将additional_files与安装打包在一起。

我认为这是一个位置问题,即NSIS脚本无法找到additional_files/文件夹。我尝试通过将package.json文件夹添加到files部分并将其放置在项目的根目录中来修改additional_files/文件。

我什至尝试将其放在我的build脚本所在的installer.nsh文件夹中,但是没有运气。

electron nsis
1个回答
0
投票

File查找相对于默认情况下.nsi目录的文件。 /NOCD可用于防止这种情况,但我不确定电子是否使用该开关。

!cd可以在脚本内使用以更改目录,但是我不确定在这种情况下这是否对您有很大帮助,除非您愿意使用绝对路径,并且在这种情况下,您可以使用改为使用File指令的绝对路径。

如果您只知道您的.nsh文件在哪里,我想您可以尝试File /r "${__FILEDIR__}\additional_files\*"

© www.soinside.com 2019 - 2024. All rights reserved.