AI写作智能体 自主规划任务,支持联网查询和网页读取,多模态高效创作各类分析报告、商业计划、营销方案、教学内容等。 广告
## 说明: 本案例是使用clsWindow2.2控制QQ桌面版来发送消息的。原理是模拟人工操作:选择对应的人员或群 -> 点击消息框 -> 输入框中输入消息 -> 按回车,代码注释很详细,看下就能明白,有一定vb基础的人可以改成群发,定时发送,群中@发送。 **注意运行前一定要将qq窗口拆散或者将目标窗口拖出来,否则程序无法根据标题定位窗口。** ## 测试环境: >[info]win7x64 + QQ9.2.2 + clsWindow2.2 **提示:** 如果不能用可能是您的版本太旧,或者QQ软件更新导致一些控件位置大小改变,请仔细检查并修改相应代码。以下代码2020-02-05测试通过,本代码不保证更新。 涉及到的坐标可通过qq截图功能获取相对的位置,具体可参考:[如何确定绝对或相对坐标?](05如何确定绝对或相对坐标?.md) ## 声明: >[warning]本代码免费,可用于任何商业用途,但请勿做非法用途,所引起的一切后果由使用者本人承担。 ## 代码: **用法参考:** ``` sendQQMsg "clswindow交流群", "大家好,clswindow框架交流群QQ:788028734" ``` ``` Private Sub sendQQMsg(ByVal strName$, ByVal strMsg$) Dim w As New clsWindow If w.GetWindowByTitleEx(strName, 1).hWnd <> 0 Then w.Normal '设置窗口正常,防止当前是最小化到任务栏的 w.Focus w.ClickPoint w.Left + 35, w.Top + w.Height - 100, ABSOLUTE, , 300, 500 SendKeys strMsg & "{ENTER}" Else MsgBox "未发现包含“" & strName & "”的QQ聊天窗口,请打开对应的窗口再测试,注意请在面板上取消勾选“合并勾选窗口”", vbExclamation End If Set w = Nothing End Sub ``` **版本2 有些电脑上会失效,那么可以尝试使用这个版本,通过剪切板操作的** ``` Private Sub sendQQMsg2(ByVal strName$, ByVal strMsg$) Dim w As New clsWindow If w.GetWindowByTitleEx(strName, 1).hWnd <> 0 Then w.Normal w.Focus w.SendKeys "%{s}" w.Paste strMsg w.SendKeys "%{s}" Else MsgBox "未发现包含“" & strName & "”的QQ聊天窗口,请打开对应的窗口再测试,注意请在面板上取消勾选“合并勾选窗口”", vbExclamation End If Set w = Nothing End Sub ``` **完整工程下载:** 链接: https://pan.baidu.com/s/1e3Fvh4TlztUwwFTss_uMUA 提取码: bzus