[英]How to change the "Start in" path in a shortcut for an application created by Electron Builder?
我使用以下指令在 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
我只看到与快捷方式相关的这些选项:
createDesktopShortcut = true Boolean | “always”
createDesktopShortcut = true Boolean | “always”
- 是否创建桌面快捷方式。 设置为始终是否在重新安装时重新创建(即使被用户删除)。
createStartMenuShortcut = true Boolean
- 是否创建开始菜单快捷方式。
menuCategory = false Boolean | String
menuCategory = false Boolean | String
- 是否为开始菜单快捷方式和程序文件目录创建子菜单。 如果为真,将使用公司名称。 或字符串值。
shortcutName String
- 将用于所有快捷方式的名称。 默认为应用程序名称。
我可以通过使用process.chdir()
来解决这个问题
const is_dev = require('electron-is-dev');
if (!is_dev) {
process.chdir('path/to/resources/app');
}
但是,有没有更简洁的方法来更改electron-builder
中的路径“Start in”文件夹?
NSIS 在创建快捷方式时使用$OutDir
(通常与$InstDir
相同)作为起始目录。 不确定是否可以在 electron-builder 中创建快捷方式之前更改此变量,但更改它不应该是您的首要任务。
应用程序在启动时不应依赖于工作目录,所需资源应相对于 .exe 和/或相对于特殊文件夹( %appdata%
和%localappdata%
等)加载。 当用户手动创建快捷方式或从命令行启动应用程序/打开方式/拖放/无论工作目录可以是任何目录时,您都应该接受这一点并修复应用程序,而不是依赖脆弱的快捷方式属性。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.