网页中用vbscript的sendkeys方法模拟键盘输入失败?
首先是在网页中打开记事本,然后模拟键盘输入,具体代码如下:<html><head><title>VBScript</title></head><body><scriptt...
首先是在网页中打开记事本,然后模拟键盘输入,具体代码如下:
<html>
<head>
<title>VBScript</title>
</head>
<body>
<script type="text/vbscript">
Dim WshShell,app
set WshShell = CreateObject("WScript.Shell")
app=WshShell.Run("notepad")
WScript.Sleep 2000
alert("Hello")
WshShell.AppActivate app
WScript.Sleep 1000
WshShell.SendKeys "happy"
</script>
</body>
</html>
我用alert("Hello")这句来测试,发现程序执行到sleep时就无法往下执行了。能开记事本,不能完成输入。请高手指点一下,是不是sleep的问题,还是什么问题?是不是网页中的问题,浏览器问题等。网上又类似的程序,不过还是不行。 展开
<html>
<head>
<title>VBScript</title>
</head>
<body>
<script type="text/vbscript">
Dim WshShell,app
set WshShell = CreateObject("WScript.Shell")
app=WshShell.Run("notepad")
WScript.Sleep 2000
alert("Hello")
WshShell.AppActivate app
WScript.Sleep 1000
WshShell.SendKeys "happy"
</script>
</body>
</html>
我用alert("Hello")这句来测试,发现程序执行到sleep时就无法往下执行了。能开记事本,不能完成输入。请高手指点一下,是不是sleep的问题,还是什么问题?是不是网页中的问题,浏览器问题等。网上又类似的程序,不过还是不行。 展开
2个回答
展开全部
写错了吧WScript.Sleep
WshSell.Sleep 1000 是不是这样?
好像没有这个方法。
只能用 window.setTimeout 方法
<script type="text/vbscript">
Dim WshShell,app
set WshShell = CreateObject("WScript.Shell")
app=WshShell.run("notepad")
'’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’WScript.Sleep 2000
alert("Hello")
WshShell.AppActivate app
window.setTimeout "fn" ,2000
'‘’‘’‘’‘’‘’‘’‘’‘’‘WScript.Sleep 1000
sub fn()
WshShell.SendKeys "happy"
end sub
</script>
能凑活
WshSell.Sleep 1000 是不是这样?
好像没有这个方法。
只能用 window.setTimeout 方法
<script type="text/vbscript">
Dim WshShell,app
set WshShell = CreateObject("WScript.Shell")
app=WshShell.run("notepad")
'’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’WScript.Sleep 2000
alert("Hello")
WshShell.AppActivate app
window.setTimeout "fn" ,2000
'‘’‘’‘’‘’‘’‘’‘’‘’‘WScript.Sleep 1000
sub fn()
WshShell.SendKeys "happy"
end sub
</script>
能凑活
展开全部
vbscript中没有alert这个函数吧,应该用msgbox。
"wscript.sleep 2000“能用在VBS中,网页中没有wscript对象。
采用settimeout对象实现延时,但是要去掉弹出信息框那句:
<html><head><title>VBScript</title></head>
<body>
<script type="text/vbscript">
Dim WshShell,app
set WshShell = CreateObject("WScript.Shell")
app=WshShell.Run("notepad")
'延时2秒后执行后面的“激活窗口,延时1秒后发送按键”
settimeout "WshShell.AppActivate app:settimeout ""WshShell.SendKeys(""""happy"""")"",1000",2000
</script>
</body>
</html>
"wscript.sleep 2000“能用在VBS中,网页中没有wscript对象。
采用settimeout对象实现延时,但是要去掉弹出信息框那句:
<html><head><title>VBScript</title></head>
<body>
<script type="text/vbscript">
Dim WshShell,app
set WshShell = CreateObject("WScript.Shell")
app=WshShell.Run("notepad")
'延时2秒后执行后面的“激活窗口,延时1秒后发送按键”
settimeout "WshShell.AppActivate app:settimeout ""WshShell.SendKeys(""""happy"""")"",1000",2000
</script>
</body>
</html>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询