Electron提供了這樣一個API ,win.setAppDetails(options),經過它咱們能夠設置窗口任務欄按鈕的屬性:shell
appId
String (可選) - 窗口的 App User Model ID. 該項必須設置, 不然其餘選項將沒有效果.appIconPath
String (可選) -窗口的 Relaunch Icon.appIconIndex
Integer (可選) - appIconPath
中的圖標索引. 當appIconPath
沒設置時則忽略. 默認值爲0
.relaunchCommand
String (可選) - 窗口的 從新啓動命令.relaunchDisplayName
String (可選) - 窗口的從新啓動顯示名稱.在代碼中使用它的方式是:windows
在Electron源碼中搜索setappdetails關鍵字,在ui\base\win\shell.cc中找到api
首先從調用shellapi中的SHGetPropertyStoreForWindow獲取到指定窗口句柄的屬性,而後依次設置app_id、app_icon_path、relaunch_command、relaunch_display_names四個屬性。app
注意:electron
1.your_icon_path必定要指向一個真實的icon文件路徑,切不可指向electron資源打包文件中的路徑,由於windows沒法理解electron使用的資源。ui
2.your_cmd_string須要使用雙引號包裹起來,防止存在空格致使命令行沒法正確執行。命令行
運行咱們的electron程序,能夠看到任務欄圖標再也不是默認的可執行程序圖標,而是變成your_icon_path指向的圖標。code
這時在任務欄圖標上右鍵,能看到名稱是指定的your_display_name_string,在名稱上右鍵查看屬性,能夠看到一個快捷方式的屬性信息對話框,目標一欄能夠看到設定的your_cmd_string。cdn