Создание ярлыков для установленного приложения Electron

У меня есть электронное приложение, для которого я использую electron-packager для компиляции и grunt-electron-installer для создания пакета установщика Windows.

После установки я обрабатываю события белки следующим образом:

//...

  switch (squirrelCommand) {
      case '--squirrel-install':
      case '--squirrel-updated':
        createShortcuts(cleanUp);
        break;
//...

и функция createShortcuts просто порождает дочерний процесс для вызова Update.exe (Squirrel.exe) с аргументами --createShortcut=myapp.exe

Однако это работает, когда сгенерированный ярлык называется Electron вместо myapp.

Я не вижу других способов указать выходное имя ярлыка, так как мне изменить сгенерированный ярлык на myapp?

Вот фрагмент логов белки:

2016-03-20 10:34:35> ApplyReleasesImpl: Creating shortcut for myapp.exe => C:\Users\zeus\Desktop\Electron.lnk
2016-03-20 10:34:35> ApplyReleasesImpl: About to save shortcut: C:\Users\zeus\Desktop\Electron.lnk (target C:\Users\zeus\AppData\Local\myapp\Update.exe, workingDir C:\Users\zeus\AppData\Local\myapp\app-0.0.3, args --processStart myapp.exe)

person tt9    schedule 20.03.2016    source источник


Ответы (3)


После дальнейшего изучения электронного упаковщика я нашел более подробное объяснение о редактировании ресурса здесь.

используя командную строку электронного упаковщика, я передаю эти аргументы для обновления информации о встроенном электронном exe:

electron-packager ... --version-string.CompanyName="Company Inc." --version-string.ProductName="Product" ...

Установщик grunt-electron будет искать информацию об этом встроенном приложении, чтобы сгенерировать имя для ярлыка.

person tt9    schedule 20.03.2016

Если вы используете электронную кузницу, вы можете попробовать конфигурацию, которая выглядит следующим образом:

"electronPackagerConfig": {
  "icon": "Icon",
  "win32metadata":{
    "ProductName": "My App",
    "CompanyName": "My Company"
  }
}

Подробнее здесь: https://github.com/electron-userland/electron-forge/issues/89

person depsypher    schedule 01.03.2017

Попробуйте использовать electron-builder, если у вас возникли проблемы с Squirrel. Вы можете использовать следующую команду, чтобы создать установщик для Windows: electron-builder path/to/your-electron-packager-output --platform=win --out=path/to/your-installer-output --config=path/to/builder.json --target=win

Пример содержимого для builder.json:

{ "win": { "title": "Название моей продукции", "icon": "path/to/your-icon.ico", "version": "1.0.0", "publisher": "Название вашей компании " } }

P.s. Необходимо установить NSIS и добавить путь NSIS в среду PATH. прежде чем запускать указанную выше команду.

person phuongle    schedule 21.03.2016