教你用vbs实现微信自动发送消息功能

寻技术 其他编程 2023年07月12日 310

前言

最近对电脑或手机自动进行某些操作很感兴趣,于是去看了一下有关手机电脑微信自动回复消息相关的东西,发现很多恶搞代码不仅可以通过实现病毒的方式,同时用vb就可以实现一个常见的恶搞脚本。

1、微信自动回复消息

微信,作为日前最热最火的社交软件,应该是家喻户晓的了,年轻人,老人甚至小孩都在用手机玩微信,对于上班族来说用的最多的可能是微信电脑版,我们每天都在手工输入发送或者回复各类微信消息,难免会遇到一些情况我们需要电脑自动帮我们向指定人发送消息,而利用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键进行发送

2、vbs脚本运行方式

如果你的电脑上没有安装任何编辑器没有关系,用电脑自带的记事本就可以编写脚本,右键->新建->文本文档,在新建的文本文档里编写vbs脚本,写完以后重命名,将后缀改为.vbs,出现以下提示,选择是。

双击就可以运行vbs脚本啦。

总结

关闭

用微信“扫一扫”