如何在需要与Windows 10中的UAC提示交互时使用AutoHotKey启动Visual Studio 2015

时间:2016-10-13 15:02:46

标签: visual-studio autohotkey uac

我已经设置了VS2015,因此它始终以管理员身份运行(类似于此https://superuser.com/a/468056/48346)。

现在我想创建一个AHK脚本来启动Visual Studio并运行一些UI / Keyboard命令让它为我做好准备 - 我希望这个脚本在登录时运行,但这是一个后来的问题。

Null解决方案显然是关闭UAC,但我不想这样做。

到目前为止,我仍然坚持UAC提示总是抓住整个屏幕的方式,我不能使用AHK点击“是”按钮或发送任何键盘命令按Enter或类似的东西。我想这是UAC提示的全部内容,不允许任何事情为我做。

如果没有显示UAC提示,是否无法打开VS?我需要打开一个特定的解决方案文件,因此如果可以从命令行执行,则需要将解决方案文件包含在命令中以便打开它。

到目前为止,我已经尝试过AHK命令RunAs,但我无法使用它 - 我的个人用户是域用户,是本地计算机上管理员组的成员。我尝试使用管理员权限创建一个特定的跑步者帐户,并使用RunAs命令,但这不起作用。当我运行这个AHK代码时,我得到访问被拒绝:

RunAs, runner, password, LocalComputer-Name
Run, %comspec% /k "start c:\Users\myacc\Documents\path\solution.sln"

跑步者帐户位于我本地计算机上的Administrators组中,该帐户可以完全访问存储解决方案文件的文件夹,包括文件本身 - 因此我不明白访问被拒绝的原因。

这不可能吗?

聚苯乙烯。我在AHK论坛上问这个问题,但在那里注册似乎根本没有发送任何确认电子邮件(不,它不在我的垃圾邮件文件夹中),所以我不能在那里发布。

1 个答案:

答案 0 :(得分:3)

答案是安排以最高权限运行的任务以在登录时运行脚本。我真正遇到的问题是构建和调试脚本 - 每次运行任务都很麻烦。因此,要调试脚本,只需右键单击该脚本并选择“以管理员身份运行”。然后在脚本开始运行之前弹出UAC提示,但不会在脚本期间弹出。然后,当脚本准备就绪时,只需安排在登录时运行的任务,然后选中该任务的“以最高权限运行”选项。然后,您可以通过右键单击新创建的任务并选择运行来尝试该任务,然后您将看到它在没有UAC提示的情况下运行。

我的脚本的最终版本只是使用Run打开解决方案文件,不需要RunAs - 计划任务设置为以我的用户身份运行,具有最高权限。

compile project(':service-client')