首页 编程 软件学院 查看内容

用一个简单的API做出属于自己的QQ后台喊话器!(新手必学)

2017-7-9 12:36 |来自: 互联网 3530 0

摘要: 今天教大家学习一个系统提供的API:postmessage:Windows API(应用程序接口) 中的一个常用函数,用于将一条消息放入到消息队列中,通常我们用于后台点击和发送字符串!我们今天以QQ为例:制作一个简单的后台发送字符 ...

今天教大家学习一个系统提供的API:

postmessage:Windows API(应用程序接口) 中的一个常用函数,用于将一条消息放入到消息队列中,通常我们用于后台点击和发送字符串!

我们今天以QQ为例:制作一个简单的后台发送字符串到QQ对话框的功能!

我们需要两个API:

  1. FindWindow :获取QQ窗口句柄

  2. postmessage:后台发送字符串


  1. 我们以我们的粉丝群的窗口为例:

570 300

我们可以看到:

QQ群的窗口类名:TXGuiFoundation

QQ群的窗口标题:游戏与编程交流群

知道了类名和标题我们就可以利用FindWindow这个API来获取句柄。

代码如下:

hwnd = FindWindow("TXGuiFoundation", "游戏与编程交流群")

2.知道了窗口句柄,我们就可以用postmessage发送字符串了!

VB6.0完整代码如下:

Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long

Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long

Const WM_CHAR = &H102

Private Sub Command1_Click()

Dim hwnd As Long

hwnd = FindWindow("TXGuiFoundation", "游戏与编程交流群")

FaSongZiFuChuan "技术小成", hwnd

End Sub

Private Sub FaSongZiFuChuan(ByVal strP As String, lngHandle As Long)

'====================================================PostString发送字符串子程序====================================================

Dim intP As Integer

Dim intK As Integer

Dim lngAsc As Long '

Dim lngP As Long

Dim strT As String

On Error GoTo errSub

For intP = 0 To Len(strP) - 1

strT = Mid(strP, intP + 1, 1)

If Asc(strT) <= 0 Then

lngAsc = AscW(StrConv(strT, 128))

If lngAsc < 0 Then

lngAsc = lngAsc + 65536

End If

Else

lngAsc = Asc(strT)

End If

lngP = PostMessage(lngHandle, WM_CHAR, lngAsc, 0)

Next intP

Exit Sub

errSub:

End Sub

3.运行程序,测试下!

OK!测试成功!是不是很简单呢?当然我们也可以用SendMessage替代PostMessage!

我们还可以加入后台点击回车键,这样就可以做到完整的喊话器了!

原理和这个类似,这里不做过多阐述了!


喜欢编程技术的可以关注我哦!

本文出处: http://www.toutiao.com/a6440538860173771009/
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部