我用这个 AutoHotKey 脚本实现 win+s 打开 sublime:
#S::Run, C:\Apps\Coding\Sublime\sublime_text.exe
但是现在遇到的问题是:
- 不以管理员身份运行脚本,则无法在任务管理器等高权限的界面触发
- 以管理员身份运行脚本,则无法拖动文件进入 sublime 中
查询一番发现,因为高权限运行的程序,拒绝了低权限的文件拖动,把 sublime 换成了 chrome 发现有一样的问题,这就难受了呀。
所以我需要做的事情是:以管理员身份启动ahk脚本,脚本中以普通用户权限启动其他程序。
官方文档写道:
以管理员权限运行脚本会导致脚本启动的所有程序也以管理员权限运行。
变量和表达式 | AutoHotkey v1
尝试改用 RunAs
也确实可以,但是需要指定运行用户,并把账号对应密码写在脚本里,我在找是否有其他方式。
后面我尝试别的思路时发现,HotkeyP 是可以选择是否以管理员身份运行目标应用,即使 HotkeyP 本身已经是管理员,如图。
虽然用 HotkeyP 已经能达到我的这个目的,但是它的 自由度 和 组合键丰富程度 不像 AHK 那么高,我还是希望用 AHK 解决。
总结一下需求是:
- 使用 AHK 定义一个快捷键 用于启动 sublime
- 即使处于管理员权限的界面,也能正常触发启动
- 被启动 sublime,可以正常地拖入文件进行编辑
请问如何优雅地实现这个需求?