我按照以下说明在Windows中构建应用程序(nsis):
electron-builder --win --x64
为方便起见,我也使用asar: false
默认情况下,“开始于”文件夹就是这个文件夹:
C:\Users\UserName\AppData\Local\Programs\app-name
但是我需要另一个:
C:\Users\UserName\AppData\Local\Programs\app-name\resources\app
我只看到与快捷键相关的these options:
createDesktopShortcut = true Boolean | “always”
-是否创建桌面快捷方式。设置为始终,是否在重新安装时也重新创建(即使被用户删除)。
createStartMenuShortcut = true Boolean
-是否创建开始菜单快捷方式。
menuCategory = false Boolean | String
-是否为开始菜单快捷方式和程序文件目录创建子菜单。如果为true,将使用公司名称。或字符串值。
shortcutName String
-用于所有快捷方式的名称。默认为应用程序名称。
我可以使用process.chdir()
const is_dev = require('electron-is-dev');
if (!is_dev) {
process.chdir('path/to/resources/app');
}
但是,有没有更清洁的方法来更改electron-builder
中“开始于”文件夹的路径?
答案 0 :(得分:1)
在创建快捷方式时,NSIS使用$OutDir
(通常与$InstDir
相同)作为起始目录。不知道是否可以在电子生成器中创建快捷方式之前更改此变量,但是更改它不是您的第一要务。
应用程序启动时应不取决于工作目录,应相对于.exe和/或相对于特殊文件夹(%appdata%和%localappdata%等)加载所需的资源。 )。当用户手动创建快捷方式或从命令行启动您的应用程序/使用/打开/拖放/打开任何目录时,工作目录可以是任何目录,您应该接受此目录并修复应用程序,而不要依赖脆弱的快捷方式属性。