中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-09-23 16:05
47,812 主题排行 / 349,917 发帖 / 今日 0 篇 / 48,273 会员排行
DOS批处理 & 脚本技术(批处理室) » 请教大家一个问题
可打印版本  1,363 / 8
第1楼 hanbsome 发表于 2006-04-29 15:02
初级用户 发帖 14 积分 36
请教大家一个问题
大家好,现向高手求一批处理。先假如我要安装e:\123.exe 123.exe文件是一个windows的安装文件,在安装的过程中,会要求点Next Yes 还有确定这样的过程,请问用批处理文件 怎样来实现呢,完全不需要人手动点鼠标或者按键盘
谢谢大家了,
第2楼 bagpipe 发表于 2006-04-29 15:34
银牌会员 发帖 425 积分 1,144 来自 北京
你的要求单独的批处理是完成不了的,因为批处理程序不能提供按键输入,例如你说的实现点击NEXT按钮之类的(总之我是不知道),不过能够借助VBS脚本来实现你的要求,不知道LZ意见如何?
第3楼 hanbsome 发表于 2006-04-29 16:33
初级用户 发帖 14 积分 36
Originally posted by bagpipe at 2006-4-29 15:34:
你的要求单独的批处理是完成不了的,因为批处理程序不能提供按键输入,例如你说的实现点击NEXT按钮之类的(总之我是不知道),不过能够借助VBS脠...


如果用VBS脚本能够实现的话,也能解决问题,请赐教,。不胜感激
第4楼 3742668 发表于 2006-04-29 16:59
荣誉版主 发帖 718 积分 2,013
例:

根据你的要求,你只需要把notepad更改为e:\123.exe,然后发送回车键就行了,如果默认tab停留位不在next按纽上的话则需酌情发送tab键盘。
第5楼 hanbsome 发表于 2006-04-29 17:07
初级用户 发帖 14 积分 36
谢谢 bagpipe和版主 我现在先测试一下,再次谢谢你们
第6楼 hanbsome 发表于 2006-04-29 17:16
初级用户 发帖 14 积分 36
With Wscript.CreateObject("Wscript.Shell")
.run "notepad" '运行记事本
Wscript.Sleep 5000 '等待半秒
.SendKeys "D~" '按下D键及回车,~表示回车。
Wscript.Sleep 5000
.SendKeys "~O~"
Wscript.Sleep 30000
.SendKeys "~S"
End With

再次请教版主 我将时间改为5秒,连续按两次回车键以后,安装过程已经能够自动的安装完成,最后一个时间我改成了30秒,因为安装过程大概需要20秒。,希望他能够在安装完成后在执行一次回车。这样程序就会自动重起系统,为何我改成30秒的时间了依然不执行最后的那一次呢,
第7楼 hanbsome 发表于 2006-04-29 17:17
初级用户 发帖 14 积分 36
不好意思。对VBS脚本一窍不通 麻烦二位了,谢谢,再次感谢
第8楼 3742668 发表于 2006-04-29 17:35
荣誉版主 发帖 718 积分 2,013
可能是你在等待的过程中激活了别的窗口导致当前窗口失去焦点的缘故吧。
你可以在每次发送按键前先激活该窗口,方法为:
WshShell.AppActivate "标题内容"
例如:
第9楼 bagpipe 发表于 2006-04-30 14:03
银牌会员 发帖 425 积分 1,144 来自 北京
这个得根据你安装程序的步骤来定,只能给你个雏形你自己来修改,因为我们也不知道你到底是安装什么样的程序,而安装程序又分几步,所以我只能给你个实例,你按照实例来修改。下面是一个安装CCLEANER软件的脚本,http://www.ccleaner.com/ccdownload.asp这个是程序下载,这个工具不错,我已经用了2年左右了,是个清理磁盘垃圾的小程序,进入上面的页面,点击“Alternative Download ”就可以下载了,下面是VBS代码:

option explicit
dim bagpipe,hi,ok
set bagpipe=createobject("wscript.shell")
hi=inputbox("输入你要执行程序的完整路径~~","别写错了啊,要不可不成的!","程序的完整路径")
set ok=bagpipe.exec(hi)
with bagpipe
wscript.sleep 1000
.appactivate ok.processid
.sendkeys "{ENTER}"
wscript.sleep 1000
.sendkeys "{ENTER}"
wscript.sleep 1000
.sendkeys "{ENTER}"
wscript.sleep 1000
.sendkeys "c:\test" '这个是改变了程序安装的默认路径为c:\test
wscript.sleep 1000
.sendkeys "{TAB 3}"
wscript.sleep 1000
.sendkeys "{ENTER}"
wscript.sleep 1000
.sendkeys "{ENTER}"
wscript.sleep 6000
.appactivate ok.processid
.sendkeys "{ENTER}"
end with
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023