状況
electron-builderデフォルトのSquirrel.Windows形式だと、スタートメニューすら作られないのでどう起動したらいいかわからなくなる。
環境
- electron 1.6.6
- electron-builder 7.24.0
- (app側のpackage.jsonに) electron-squirrel-startup 1.0.0
解決方法
electron-squirrel-startupというパッケージを入れて、main.jsの最初の方で読み込んでやると良い。
これだけ
if(require('electron-squirrel-startup')) return;
別の方法として、NSISというパッケージ形式を使うと、デフォルトで追加してくれる。
自動アップデート機能ももっているが、NUTSサーバーは未対応なので、自前で配置してやる必要がある。
"build": {
"target": [
"nsis"
]
}
スタートメニューのディレクトリがundefinedになる場合
一見指定できるオプションが無いように見えるが、package.jsonのauthorが空だと発生する。
なお、electron-buildが推奨するpackage.jsonの配置だと、app側のpackage.jsonもauthorをちゃんと書いておく必要がある。
- StartMenu Directory Name · Issue #14 · mongodb-js/electron-squirrel-startup
- [Feature Request] Ability to set author/CompanyName programmatically · Issue #455 · electron-userland/electron-builder