如题,
网上没有源码,但也感谢各路大神留下过星星点灯般的痕迹,才让我有迹可循。
切入正题。
1.第一步是通过vbs脚本文件发送微信消息。
其中代码如下:
On Error Resume Next
Dim wsh,Msg,Msgr,Name
Name="文件传输助手"
Msg="老婆早安 夏日里蝉鸣虫叫 不管是瞬间还是长久 依然有着各自对理想的追求"
Set wsh = CreateObject("wscript.shell")
wsh.Run """C:\Program Files (x86)\Tencent\WeChat\WeChat.exe""",false,false
WScript.Sleep(3000)
wsh.Run "mshta vbscript:ClipboardData.SetData("&chr(34)&"text"&chr(34)&"," &Chr(34)& Name&Chr(34)& ")(close)",0,True
'把name存入剪切板
wscript.sleep 500 '停留500毫秒
wsh.sendKeys "^f" '执行ctrl + F快捷键在微信窗口唤醒搜索功能
wscript.sleep 1000
wsh.sendKeys "^v" '复制查找发送消息的对象
wscript.sleep 1000
wsh.sendKeys "{ENTER}"
wscript.sleep 1000
wsh.Run "mshta vbscript:ClipboardData.SetData("&chr(34)&"text"&chr(34)&"," &Chr(34)& Msg &Chr(34)& ")(close)",0,True
WScript.Sleep(200)
wsh.sendKeys "^v"
WScript.Sleep(300)
wsh.sendKeys "{ENTER}"
wscript.sleep(2000)
set spans=NoThing
Set wsh=NoThing
wscript.quit
其中打开微信的代码有2种,其一如下,通过本机微信地址打开,你们使用时需要更改为自己本机的地址:
wsh.Run """C:\Program Files (x86)\Tencent\WeChat\WeChat.exe""",false,false
其二,在运行微信(电脑端)的情况下,可以通过快捷键调出,如下:
wsh.sendKeys "^%w" '通过Ctrl+Alt+W快捷键打开微信
以上两种方案均可。
然后进行以下操作:将上面的代码写入 txt 文件,保存后另存为 .vbs 的文件,双击便可以打开。
但是我们在vb.net程序设计种怎么引用vbs脚本文件来进行操作?这样可行吗?在最开始我也是有这样的疑问,一番探索之后,发现别有一片天地。
首先,可以新建一个窗体,加入Button,如图:
在Button事件中引入VBS内容,
Dim vbs As Object
Dim code As String
code = "此处录入vbs脚本程序内容,注意vbcrlf换行,以及双引号的引用"
vbs = CreateObject("MSScriptControl.ScriptControl")
vbs.Language = "VBScript"
vbs.ExecuteStatement(code)
内容执行完毕,记得code内容必须严格按照格式书写。
延伸内容如下:
操作后手机端接收消息如下:
再给大家一个避坑的点,如下:
vbs中延时代码:
wscript.sleep 1000 '停留1秒
但是它在vb.net中不适用,在vb.net中需要将以上延时的代码替换为以下代码:
Ts=Timer
Do
DoEvents
Loop While Timer-Ts<1'延时1秒