au3打开一个批处理脚本,利用受限账户以管理员身份运行某个程序,怎么输入密码

AU3程序调用的一个批处理脚本,受限账户以管理员身份运行某个程序,出现输入密码的命令框时怎么输入密码和回车的命令啊,send方法不能输入... AU3程序调用的一个批处理脚本,受限账户以管理员身份运行某个程序,出现输入密码的命令框时怎么输入密码和回车的命令啊,send方法不能输入 展开
 我来答
百度网友5311d79
2013-12-04 · TA获得超过1.9万个赞
知道大有可为答主
回答量:6356
采纳率:71%
帮助的人:3220万
展开全部

AU3本身就自带RunAs函数,支持带密码执行。不要用批处理。

格式如下:

RunAs ( "用户名", "域名", "密码", 登录标志, "程序" [, "工作目录" [, 显示标志 [,
可选标志 ]]] )

看到了吗?第三个参数就是”密码"。

下面是代码示例:

Local $sUserName = "administrator"
Local $sPassword = "123456" #自己修改
RunAs($sUserName, @ComputerName, $sPassword, 0, @ScriptDir & "\InstallAutoCAD2007.exe", @ScriptDir, @SW_HIDE)

要求安装文件exe与Au3脚本放在同目录。

这里的"显示标志"使用了@SW_HIDE,即这个黑色DOS窗口不会显示出来,成功的话应该就直接跳到程序安装界面。如果出于调试目的需要看到这个DOS窗口,请将该标志改为@SW_MAXIMIZE。

浮生难忆
2013-12-04 · TA获得超过920个赞
知道小有建树答主
回答量:571
采纳率:50%
帮助的人:690万
展开全部

批处理代码中加入这个:

start admin.vbs
runas /user:administrator InstallAutoCAD2007.exe

admin.vbs 内容如下(延时是为了输入成功,123就是密码,请自行修改)

 

dim wsh
set wsh=WScript.CreateObject("WScript.Shell")
WScript.Sleep 3000
wsh.SendKeys "123"
WScript.Sleep 1000
wsh.SendKeys "{enter}"

 

原理就是先打开一个发送按键的vbs,延迟3S后发送密码,然后延迟1s发送回车。在这3s时间内,批处理已经执行了你那个命令,等待VBS发送密码和回车指令,然后就登录成功了!

 

Ps: 成功的关键在于那个延时是否合理,若不成功,你注意调节延时的长度,改成5S之类的,你自己调试吧。

追问

运行时出现错误,提示用户名或密码不正确(用户名和密码肯定正确),延时时间我也试着改了,也不行

追答

看了下你的截图,你都是手动输入的?

 

你先把代码保存为批处理,然后使用AU3执行这个批处理:

@echo off
start admin.vbs
runas /user:administrator InstallAutoCAD2007.exe
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-12-04
展开全部
例如:> runas /noprofile /user:mymachine\administrator cmd> runas /profile /env /user:mydomain\admin "mmc %windir%\system32\dsa.msc"> runas /env /user:user@domain.microsoft.com "notepad \"my file.txt\""自己 runas /?的 你参照一下望采纳,谢谢
追问
我已经运行完了runas命令,我现在要做的是利用AU3在这个命令框里输入密码,能搞定吗,急用
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式