RunAs

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

RunAs User, Password, Domain

参数

User

类型: 字符串

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

Password

类型: 字符串

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

Domain

类型: 字符串

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

备注

如果脚本由于用户帐户控制(UAC) 而以受限特权运行, 则即使使用 RunAs, 其启动的任何程序通常也将受到限制. 要提升权限, 请改用 Run *RunAs.

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

如果指定了无效的 User, PasswordDomain, 则 Run 和/或 RunWait 将显示一条错误消息来说明问题(除非 Try/Catch 语句捕获了此错误).

当 RunAs 功能生效时, RunRunWait 将无法启动文档, URL 或系统动词. 换句话说, 要启动的文件必须是可执行文件.

为了使此函数起作用, "Secondary Logon" 服务必须设置为手动或自动(如果设置为手动, 则操作系统会根据需要自动启动).

Run, RunWait

示例

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

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