|
本帖最后由 Canada 于 2024-10-17 15:05 编辑
变量名 | 类 型 | 静态 | 数组 | 备 注 | 局_路径 | 文本型 | | | 注册表 | 注册表操作 | | | 键名数组 | 文本型 | | 0 | i | 整数型 | | | n | | | |
局_路径 = 取文本注册项 ( #本地机器, “SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\App Paths\” + 程序主文件名 + “\Path”, )如果 (局_路径 ≠ “”)如果真 (取文本右边 (局_路径, 1 ) ≠ “\”)局_路径 = 局_路径 + “\”局_路径 = 取文本注册项 ( #根类, “Applications\” + 程序主文件名 + “\shell\open\command\”, )如果真 (局_路径 ≠ “”)如果 (局_路径 ≈ #引号 )局_路径 = 文本_取出中间文本 (局_路径, #引号, #引号, , )局_路径 = 文件_取目录 (局_路径 ) 局_路径 = 文本_取左边 (局_路径, 取空白文本 (1 ), -1, )如果真 (局_路径 = “”) 局_路径 = 取文本注册项 ( #本地机器, “SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\” + 文本_取左边 (程序主文件名, “.exe”, , 真) + “\InstallLocation”, ) + “\”如果真 (局_路径 = “”)n = 注册表. 枚举键名 (“HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Compatibility Assistant\Store”, 键名数组, , )计次循环首 (n, i )如果真 (文本_取右边 (键名数组 [i ], “\”, , 真) = 程序主文件名 )局_路径 = 文本_取左边 (键名数组 [i ], 程序主文件名, , 真)计次循环尾 ()返回 (局_路径 )
在不影响原命令使用的情况下极大的增强了取程序目录的能力!主要是新增了两处注册表cha询和搜索遍历,无缝替换之前的命令
补充内容 (2024-10-19 20:58):
最后一个如果真应该是判断是否为反斜杠"\"而不是空文本啊;或者将后两个如果真的代码块互换位置,小小疏忽 |
|