一个基于JSON的轻量启动器 / A JSON-based lightweight launcher
中文(当前) | English
- 基于JSON快速配置
- 支持图标加载(Windows支持图标索引语法)
- 动态布局调整
- Qt6的原生夜间模式
- 跨平台
- 下载软件压缩包。并放在合适的位置(要卸载直接删掉就好)。
按道理dll是齐的,Win下测了下几个环境是没问题的。
不过如果你是《精简》汐统的话可能真会缺,要缺少的话就自行上网补吧。记得程序是64位的。
未来的AppImage本身就是隔离环境。依赖也不必担心。 - 启动程序
- 在任务栏找到程序图标,右键,点击“打开配置目录(&F)”
目录一般是
%USERPROFILE%\AppData\Local\WinLauncher(Windows)或者~/.config/WinLauncher(Linux)、~/Library/Preferences/WinLauncher(MacOS,Qt文档这么说的,没测过。因为没苹果 逃.jpg) - 编写配置文件
config.json(见下) - 再次右键任务栏的图标,点击“重载配置(R)”
- 使用
META+SHIFT+E打开窗口,可以压缩窗口高度以调整布局META在Windows下对应Win键 左键双击托盘图标也可以打开窗口 - 拖动窗口底部可以调整窗口按钮布局,如视频所示:
2025-08-12.215410.mp4
{
"buttons": [
{
"cmd": "cmd /c \"taskkill -im explorer.exe -f && explorer\"",
"icon": "C:/Windows/explorer.exe,0",
"name": "Restart &explorer.exe",
"type": "command"
},
{
"icon": "C:/windows/system32/shell32.dll,319",
"items": [
{
"cmd": "explorer \"E:\\Tools\\something.ahk\"",
"icon": "example.ico",
"name": "&1. An Example AHK",
"type": "command"
},
{
"cmd": "\"E:/Program Files/JiJiDown/JiJiDownForWPF.exe\"",
"icon": "E:/Program Files/JiJiDown/JiJiDownForWPF.exe,0",
"name": "&2. JijiDown",
"type": "command"
}
],
"name": "&List",
"type": "menu"
}
],
"hotkey": "META+Shift+E",
"window": [
174,
102
]
}效果:

一个典型的WinLauncher配置文件包含buttons、hotkey和window三个主字段:
buttons: 是一个JSON数组。子成员是JSON对象描述按钮的类型、图标、名称和操作type: 描述按钮类型。可以是命令按钮(command)或者菜单按钮(menu)。name: 描述按钮的名称。可以使用&设定Alt快捷键。icon: 描述按钮的图标。可以是任何受QIcon支持的图片/图标文件在Windows下,还支持图标索引语法,比如
C:/Windows/system32/shell32.dll,114。
图标索引语法的路径如果含有空格,不需要也不能使用引号包裹。cmd:commamd按钮独有的属性。描述按钮执行的命令行。如果是cli程序将会静默执行。这里的路径如果含有空格,需要使用引号包裹,比如:
"cmd": "\"E:/Program Files/JiJiDown/JiJiDownForWPF.exe\""。
有些程序,即使不是cli,也可能会静默执行。要避免这种静默执行的情况,可以尝试以下方式:- 使用
start命令: Windows可以使用cmd: "cmd /c \"start \"\" \"an app with space.exe\" \""以强制弹出窗口,但要注意嵌套引号的转义问题(\"是JSON嵌套引号); - 使用
explorer执行: Windows也可以考虑使用cmd: "explorer \"C:\\app.exe\"",这也可以打开部分程序;但是它不能携带参数启动。路径分隔符也只能使用\(当然由于是JSON,应该打\\),而不能使用/; - 针对Linux: Linux可以使用
xdg-open
- 使用
items:list按钮特有的属性。描述这个按钮的弹出菜单中的内容。子成员还是上述的JSON对象。允许一层层嵌套
menu菜单。
hotkey: 一个字符串。描述了触发窗口弹出的快捷键。在Windows下,
Win、Windows会被转换为META
如果快捷键有错误,会回退到META+SHIFT+Ewindow: 也是一个JSON数组。第0、1个子成员是窗口的宽和高window字段第2以及后面的元素会被忽略也就是"window":[234, 267, 114514, 1919810]是有效的
程序退出、窗口关闭时该字段会自动更新
编写完配置后,记得右键单击托盘图标重新加载配置。然后打开窗口检查布局、图标、按钮行为是否正确。
在配置文件有错误的情况下,WinLauncher可能会清空配置文件
绝对不是我懒得写回滚(傲娇.jpg)。
建议拷贝一份作副本。
然后就可以食用了。可以设置开机启动。WinLauncher会保留上次使用的布局。
开机自启的相关内容不再赘述。
Windows可以在Shell:Startup下创建快捷方式、添加任务计划或者修改注册表;
Linux用户可以使用systemd;
MacOS用户则可以从Dock管理启动项。具体方法自行查阅。
- 程序是静默启动,除非
META+SHIFT+E或者双击任务栏图标窗口是不会打开的。只要在任务栏见到红黄蓝的立方而且没有报错通知,那就启动成功了 - 快捷键默认是
META+SHIFT+E(Windows下,META相当于WIN),可能有冲突,可以修改配置文件(参见上面)。 - JSON写起来还是有点麻烦,可以考虑拿着模板到JSON编辑器里面复制粘贴(比如
https://www.json.cn/jsonedit/)正在考虑写一个图形化配置界面。
绝对不是挖坑(傲娇 - 副本.jpg) - Windows图标的路径识别逻辑和命令行的路径识别逻辑不甚一样,特别是图标索引语法。所以如果图标成功加载但是点击按钮没反应,请再检查下命令行是否正确(比如斜杠、引号啥的)。
- 一定、一定记得备份好配置文件。
1. hotkey字段
2. 图形化配置器