RunAs

指定一组用户凭据, 用于所有后续的 RunRunWait 命令.

RunAs , User, Password, Domain

参数

User

如果省略此参数和其他所有参数, 则关闭 RunAs 的功能, 这样会恢复 RunRunWait 到它们默认的行为. 否则, 指定用来创建新进程的用户名.

Password

如果为空或省略, 默认为空密码. 否则, 请指定 User 的密码. 请注意, 默认情况下不允许传递空白密码, 根据操作系统策略 "帐户: 使用空密码的本地帐户只允许进行控制台登录".

Domain

如果为空或省略, 将使用本地账户. 否则, 请指定 User 的域名. 如果这样不起作用, 请尝试使用 @YourComputerName.

备注

如果当前脚本运行在用户账户控制环境(UAC) 中, 它启动的程序同样会受到权限限制, 即使使用 RunAs 也一样. 此时可以通过用 Run *RunAs 替代 RunAs 来提升新启动进程的权限.

此命令只通知 AutoHotkey 为后续所有的 RunRunWait 命令使用(或不使用) 替换的用户凭据.

此命令不会改变 ErrorLevel. 如果指定的 User, Password 和/或 Domain 无效, 则 RunRunWait 会显示错误消息来指出此问题(除非使用了 UseErrorLevel 选项).

当 RunAs 功能有效时, RunRunWait 不能启动文档, URL 或系统动词. 换句话说, 此时只能运行可执行文件.

"Secondary Logon" 服务必须设为手动或自动, 这样此命令才能工作(设为手动时操作系统会在需要时自动启动它).

Run, RunWait

示例

以管理员身份打开注册表编辑器.

RunAs, Administrator, MyPassword
Run, RegEdit.exe
RunAs  ; 恢复为普通行为.