Как изменить путь «Начать с» в ярлыке для приложения, созданного Electron Builder? - PullRequest
0 голосов
/ 25 июня 2019

Я создаю свое приложение (nsis) в Windows с помощью этой инструкции:

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” - Создавать ли ярлык на рабочем столе. Установите всегда, если воссоздавать также при переустановке (даже если пользователь удалил ее).

  • createStartMenuShortcut = true Boolean - Создать ли ярлык меню «Пуск».

  • 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?

1 Ответ

1 голос
/ 25 июня 2019

NSIS использует $OutDir (обычно то же самое, что и $InstDir) в качестве начального каталога, когда создает ярлыки.Не уверен, что вы можете изменить эту переменную до того, как ярлыки будут созданы в электронном конструкторе, но это не должно быть вашим первым приоритетом, чтобы изменить его.

Приложения должны не зависеть от рабочего каталога, когда они запускаются, требуемые ресурсы должны быть загружены относительно .exe и / или относительно специальных папок (% appdata% и% localappdata%так далее.).Когда пользователи вручную создают ярлыки или запускают ваше приложение из командной строки / открывают с помощью / drag & drop / независимо от того, рабочим каталогом может быть любой каталог, и вы должны принять это и исправить приложение, а не полагаться на хрупкое свойство ярлыка.

...