我一直在尝试向 Electron 安装程序添加其他功能,在其中复制一些打包在安装程序中的文件,但是当我尝试编译 Electron 项目以创建安装程序时,我收到一个非描述性错误,即我得到:
* 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
而不是SetOutPath
和File
,当我将additional_files
文件夹放置到与安装相同的文件夹(dist
文件夹)中时,它可以按预期工作,但是我希望将该文件夹打包在安装程序中。但是,我无法将additional_files
与安装打包在一起。我认为这是一个位置问题,即
NSIS
脚本无法找到additional_files/
文件夹。我尝试通过将package.json
文件夹添加到files
部分并将其放置在项目的根目录中来修改additional_files/
文件。我什至尝试将其放在
build
脚本所在的installer.nsh
文件夹中,但是没有运气。
最佳答案
File
查找相对于默认情况下.nsi目录的文件。 /NOCD
可以用来防止这种情况,但是我不确定 Electron 是否使用该开关。!cd
可以在脚本内使用以更改目录,但是我不确定在这种情况下这是否对您有很大帮助,除非您愿意使用绝对路径,并且在这种情况下您可以将绝对路径与改为使用File
指令。
如果您只知道您的.nsh文件在哪里,我想您可以尝试File /r "${__FILEDIR__}\additional_files\*"
关于electron - 在NSIS安装中包括非 Electron 文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62200522/