分享人 | level1 |
分享时间 | 2023-11-22 12:03 |
最后更新 | 2023-12-20 19:46 |
修订版本 | 6 |
子程序大小 | 24.6 KB |
Quicker版本 | 1.40.22.0 |
原理:
1、安装软件:通过开始菜单文件夹(软件快捷方式集中的地方),遍历所有快捷方式,通过快捷方式获取安装软件信息。
2、WindowsApp:通过everything,搜索exe文件。
输出变量格式(词典变量):
{ "信息":{ "数量":0, "名称列表":[ "微信", "olk", ], "进程名列表":[ "WeChat", "olk", ], },
"列表":[ {
"名称":"微信", "进程名":"WeChat", "路径":"C:\\Program Files\\Tencent\\WeChat\\WeChat.exe", "快捷方式":"C:\\ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\\微信.lnk", "WindowsApp":false, }, { "名称":"olk", "进程名":"olk", "路径":"C:\\Program Files\\WindowsApps\\Microsoft.OutlookForWindows_1.2023.1207.400_x64__8wekyb3d8bbwe\\olk.exe", "快捷方式":"", "WindowsApp":true, }, ]
}
注:“名称列表”“进程名列表”,各自按字母排序。
获取已安装软件,来源于以下文件夹:
C:\ProgramData\Microsoft\Windows\Start Menu
C:\ProgramData\Microsoft\Windows\Start Menu\Programs
C:\Users\Default\AppData\Roaming\Microsoft\Windows\Start Menu
C:\Users\Default\AppData\Roaming\Microsoft\Windows\Start Menu\Programs
C:\Users\xxx\AppData\Roaming\Microsoft\Windows\Start Menu
C:\Users\xxx\AppData\Roaming\Microsoft\Windows\Start Menu\Programs
注:如需更多,可追加文件夹(快捷方式集中的地方)。
输出的变量,如何通过“名称”(快捷方式名称),获取“快捷方式”(快捷方式路径)?
$= var list = JsonConvert.DeserializeObject<List<Dictionary<string,object>>>({软件数据}["列表"].ToString());
list.Where(x => x.ToDictionary()["名称"].ToString() == {名称}).ToList()[0].ToDictionary()["快捷方式"];
注:不同电脑“快捷方式”路径可能是一致的,但是软件安装路径可能不一致,所以跨设备推荐获取快捷方式。
修订版本 | 更新时间 | 更新说明 |
---|---|---|
6 | 2023-12-20 19:46 |
1、WindowsApp软件,也按照软件名称排序。
2、每个数据,增加“WindowsApp”的布尔字段。(版本4) |
5 | 2023-12-17 19:06 |
1、修复WindowsApp写入路径是错误的问题。
2、变更字段“安装路径”→“路径”。 |
4 | 2023-12-16 23:14 |
功能;
1、支持获取WindowsApp应用列表。 2、增加“获取WindowsApp”开关。 3、把默认的文件夹列表和追加文件夹列表,合并为一个变量,并为输入变量。 4、默认文件夹列表,开放给用户看到。 优化: 1、在输入/输出变量的提示文字中,用更多的文字,描述子程序规则。标明默认是哪些文件夹。 2、默认文件夹增加Start Menu(Programs的父级)。 |