我有一段VBS的简单按键代码,但是运行后会死循环,求高手修改帮我实现两个效果。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我有一段VBS的简单按键代码,但是运行后会死循环,求高手修改帮我实现两个效果。相关的知识,希望对你有一定的参考价值。

源代码为:
Dim wshshell
Set wshshell = WSCRIPT.createobject("wscript.shell")
wshshell.appactivate "程序名"
while true

wscript.sleep 600000
wshshell.sendkeys "F10"

wend

我的代码是复制进TXT文档后改后缀名为VBS后打开就能实现的。
我想实现两个效果:
1,运行代码后能死循环,当我按F7时能暂停,当我按F8能停止。(我最想要的是实现停止功能)
2,运行代码后只运作一次后就立刻停止。

第一,要实现热键功能,要么借助api,要么再做一个把所有脚本程序关闭的脚本,然后把快捷方式放到桌面并弄上启动热键。。。不然光是vbs可没有这么强大的功能。

第二,Set wshshell = WSCRIPT.createobject("wscript.shell")
wshshell.appactivate "程序名"
do while i<1 '想要执行多少次就在这改多少次
i=i+1

wscript.sleep 600000
wshshell.sendkeys "F10"

loop
参考技术A 建议使用按键精灵或是autoit来做完成同样的功能,比你用vbs编写要方便的多。 参考技术B Set s = WScript.CreateObject("Wscript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")
code1="Dim wshshell" & vbcrlf & _
"Set wshshell = WSCRIPT.createobject(""wscript.shell"")"& vbcrlf & _
"wshshell.appactivate ""程序名"" "& vbcrlf & _
"while true"& vbcrlf & _ '若只运行一次,删去该行
"wscript.sleep 600000"& vbcrlf & _
"wshshell.sendkeys ""F10"" "& vbcrlf & _
"wend "& vbcrlf '若只运行一次,删去该行

code2="set ws=createobject(""wscript.shell"") "& vbcrlf & _
"ws.run ""taskkill /f /im wscript.exe"",0"

write_text code1, "D:\start.vbs"
write_text code2, "D:\stop.vbs"
Creatshortcut "start.lnk","D:\start.vbs","f7"
Creatshortcut "stop.lnk","D:\stop.vbs","f8"

Sub Creatshortcut(linkname,TargetPath,Hotkey)

pathname = s.SpecialFolders("AllUsersStartMenu") +"\程序\附件\辅助工具\"
Set Link = s.CreateShortcut(pathname+linkname)
Link.TargetPath =TargetPath
Link.Hotkey =Hotkey
Link.Save
End Sub

sub write_text(file,str)
Set f = fso.OpenTextFile(file, 2 ,True)
f.Write str
End sub

VBS小程序-弹窗整人(代码+解析)

参考技术A

VBS可以用来编写一些整人的小程序,那么如何编写呢?下面我就给大家分享一下。

    01

    我们首先在桌面上创建一个VBS的文件,如下图所示,注意VBS文件双击的话是直接运行的

    02

    然后我们用Sublime打开vbs程序文件,在里面借助loop循环来不断的输出msgbox,如下图所示

    03

    接下来我们双击vbs程序文件,运行上面编写的整人程序,你会看到如下图所示的弹窗效果,我们点击确定以后会不断的弹窗

    04

    最后如果你想关闭这个整人的程序只能通过在任务管理器里面右键结束任务进行关闭了,如下图所示

以上是关于我有一段VBS的简单按键代码,但是运行后会死循环,求高手修改帮我实现两个效果。的主要内容,如果未能解决你的问题,请参考以下文章

求一段VBS压缩RAR或ZIP代码

按键精灵,脚本怎么让一小段在全部脚本里只执行一次

求VBS JAVA 等简单易懂的操作串口(com口)的代码,

VBS小程序-弹窗整人(代码+解析)

求大神写一个简单的VBS脚本,就是点击一下打开(SCROLL LOCK)按键 多谢

按键精灵如何执行完一个脚本后等待一段时间后再次执行这个脚本