Electron任务栏图标定制分析

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

相关文章
相关标签/搜索