共计 2994 个字符,预计需要花费 8 分钟才能阅读完成。
导读 | 无意中接触了 vbs 这个脚本感觉挺好玩的, 这篇文章主要给大家介绍了关于如何用 vbs 实现微信自动发送消息功能的相关资料, 文中通过实例代码介绍的非常详细, 需要的朋友可以参考下 |
最近对电脑或手机自动进行某些操作很感兴趣,于是去看了一下有关手机电脑微信自动回复消息相关的东西,发现很多恶搞代码不仅可以通过实现病毒的方式,同时用 vb 就可以实现一个常见的恶搞脚本。
微信,作为日前最热最火的社交软件,应该是家喻户晓的了,年轻人,老人甚至小孩都在用手机玩微信,对于上班族来说用的最多的可能是微信电脑版,我们每天都在手工输入发送或者回复各类微信消息,难免会遇到一些情况我们需要电脑自动帮我们向指定人发送消息,而利用 windows 中的 vbs 的脚本我们就可以实现,我们首先了解一下 vbs。
vbs,全称 Microsoft Visual Basic Script Edition,是微软开发的一个基于 Visual Basic 的脚本语言,可以在 windows 上直接打开。
在 vbs 中我们可以通过 sendkeys 轻松的模拟发送各类按键和文字,但是直接发送中文字符会乱码,所以我们需要先将待发送的中文字符放入剪切板然后再从剪切板取出内容发送,在 cmd 中我们可以通过管道连接 echo 和 clip.exe 来将内容放入剪切板,
echo 测试 | clip.exe | |
在 cmd 命令行窗口中输入以上命令,你会发现“测试”这两个字符被放入了剪切板,在 vbs 中我们只需要调用这个命令就可以实现将内容放到剪切板的操作 | |
ws.Run "cmd.exe /c echo 测试 | clip.exe", 0, True | |
现在我们清楚如果发送消息,也知道如何发送中文了,但是要向微信发送消息我们还需要知道怎么在任意界面下唤醒微信,一般的应用我们可以通过 appActivate 来激活窗口,当然我们也可以通过快捷键来唤醒某个软件或执行特定的操作,比如在微信中我们可以通过 Ctrl+Alt+ W 来唤醒微信,用 Ctrl+ F 来唤醒查找好友功能。 |
通过快捷键唤醒微信方式发送消息最终的代码:
Dim name,Msg,num '定义变量并分配内存'Inputbox() 函数进行输入 | |
name=Inputbox("请输入你要给谁发送消息") | |
Msg=Inputbox("请输入你发送消息的内容") | |
num=Inputbox("请输入重复发送多少次消息") | |
set ws=wscript.createobject("wscript.shell")'创建 Windows 的 shell 对象打开 shell 窗口' 在 Windows 的 shell 窗口执行 cmd.exe /c echo "& Name &" | clip.exe" 将 name 复制到剪切板中 | |
ws.Run "cmd.exe /c echo" & Name & "| clip.exe",0,True | |
ws.Run "mshta javascript:window.execScript('window.close','vbs')",0,True | |
ws.sendKeys "^%w" ' 通过 Ctrl+Alt+ W 快捷键打开微信 | |
wscript.sleep 500 | |
ws.sendKeys "^f" ' 执行 ctrl + F 快捷键在微信窗口唤醒搜索功能 | |
wscript.sleep 500 | |
ws.sendKeys "^v" ' 粘贴要搜索的 name | |
wscript.sleep 500 | |
ws.sendKeys "{ENTER}" ' 按键盘的 enter 键,进入要发送消息的 name 联系人窗口 | |
wscript.sleep 500 | |
'在 Windows 的 shell 窗口执行 cmd.exe /c echo" & Name & "| clip.exe" 将发送的消息内容复制到剪切板中 | |
ws.Run "cmd.exe /c echo" & Msg & "| clip.exe",0,True | |
wscript.sleep 500 | |
for i=1 to num ' 循环发送 num 次 | |
ws.sendKeys "^v" ' 粘贴要发送的 msg 消息内容 | |
wscript.sleep 500 | |
ws.sendKeys "{ENTER}" ' 按 enter 键进行发送 | |
next |
通过执行 WeChat.exe 唤醒微信方式发送消息最终的代码:
dim program1,name,Msg '定义变量并分配内存'Inputbox() 函数进行输入 | |
name=Inputbox("请输入你要给谁发送消息") | |
Msg=Inputbox("请输入你发送消息的内容") | |
num=Inputbox("请输入重复发送多少次消息") | |
'program1 表示 WeChat.exe 的位置'program1="D:\other-systems\WeChat\WeChat.exe" | |
'program1="D:\other-systems\QQ\Bin\QQ.exe"program1=Inputbox(" 请输入 WeChat.exe 或 QQ.exe 的存储位置 ") | |
set wshshell=CreateObject("wscript.shell") '创建 Windows 的 shell 对象打开 shell 窗口' 在 Windows 的 shell 窗口执行 cmd.exe /c echo "& Name &" | clip.exe" 将 name 复制到剪切板中 | |
wshshell.Run "cmd.exe /c echo" & Name & "| clip.exe",0,True | |
wshshell.Run "mshta javascript:window.execScript('window.close','vbs')",0,True | |
' 通过绝对路径的方式打开微信窗口 | |
set oexec=wshshell.exec(program1) | |
wscript.sleep 500 ' 停留 500 毫秒 | |
wshshell.sendKeys "^f" ' 执行 ctrl + F 快捷键在微信窗口唤醒搜索功能 | |
wscript.sleep 500 | |
wshshell.sendKeys "^v" ' 粘贴要搜索的 name | |
wscript.sleep 500 | |
wshshell.sendKeys "{ENTER}" ' 按键盘的 enter 键,进入要发送消息的 name 联系人窗口 | |
wscript.sleep 500 | |
'在 Windows 的 shell 窗口执行 cmd.exe /c echo" & Name & "| clip.exe" 将发送的消息内容复制到剪切板中 | |
wshshell.Run "cmd.exe /c echo" & Msg & "| clip.exe",0,True | |
wscript.sleep 500 | |
for i=1 to num ' 循环发送 num 次 | |
wshshell.sendKeys "^v" ' 粘贴要发送的 msg 消息内容 | |
wscript.sleep 500 | |
wshshell.sendKeys "{ENTER}" ' 按 enter 键进行发送 | |
next | |
wscript.quit |
当然除了可以给微信发送消息,也可以 qq 发送消息, 基本思想就是通过按键盘的各种快捷键实现复制粘贴以及搜索联系人的功能,通过按 enter 键进行发送
如果你的电脑上没有安装任何编辑器没有关系,用电脑自带的记事本就可以编写脚本,右键 -> 新建 -> 文本文档,在新建的文本文档里编写 vbs 脚本,写完以后重命名,将后缀改为.vbs, 出现以下提示,选择是。
双击就可以运行 vbs 脚本啦。