怎么用按键精灵群发QQ信息?
1个回答
展开全部
//自定义变量设置
UserVar Hua1="发送的第一句话"
UserVar Hua2="发送的第二句话"
UserVar Hua3="发送的第三句话"
UserVar Hua4="发送的第四句话"
UserVar Hua5="发送的第五句话"
UserVar Yanshi=1000 "发送两句话之间的时间间隔,默认1000就是1秒"
//用一个变量来设置需要发送的话的内容
Dim Hua
//发送第一句
Hua = Hua1
Call FaSongXiaoXi()
Delay Yanshi
//发送第二句,以下雷同
Hua = Hua2
Call FaSongXiaoXi()
Delay Yanshi
Hua = Hua3
Call FaSongXiaoXi()
Delay Yanshi
Hua = Hua4
Call FaSongXiaoXi()
Delay Yanshi
Hua = Hua5
Call FaSongXiaoXi()
Delay Yanshi
EndScript
//发送消息的子程序
Sub FaSongXiaoXi()
//填上要发的话
SayString Hua
Delay 100
//按下Alt+S的QQ发消息热键,发送成功
KeyDown 18, 1
KeyPress 83, 1
KeyUp 18, 1
End Sub
-------------------------------------------以上是例子-------------------------------------------------
下面是我以前写过的QQ群群发,基于TM写的,TM版本忘记了,你可以参考下:
Call Register
iFirst = true
hwnds = dm.EnumWindow(0,"","TXGuiFoundation",2+4+8+16) //获取Q群句柄
Call checkQQ //检测Q群是否已经打开并且是否只打开一个Q群
//dm_ret = dm.SetWindowState(hwnds, 12) //激活窗口
dm_ret = dm.BindWindow(hwnds,"gdi","windows","windows",0) //绑定窗口
Call Plugin.Window.Size(hwnds, 600, 520) //设置窗口分辨率
Delay 500
dm.MoveTo 275, 60
Delay 800
dm.LeftClick
Delay 800
dm.MoveTo 258, 495
Delay 800
dm.LeftClick
Delay 800
cHwnd = Plugin.Window.Foreground()
Call Plugin.Bkgnd.LeftClick(cHwnd, 22, 205)
Delay 1500
AtlHwnd = Plugin.Window.FindEx(cHwnd, 0, "ATL:30A4FE48", "")
Call Plugin.Bkgnd.LeftClick(AtlHwnd, 60, 30)
Delay 800
sGetColor = Plugin.Bkgnd.GetPixelColor(AtlHwnd, 2, 20)
TracePrint "获取到的颜色为:" & sGetcolor
Dim isender , iunsender , iNum , iAdmin
isender = 0 : iunsender = 0 : iNum = 0 : iAdmin = 0
Do
sFindcolor = Plugin.Bkgnd.FindColorEx(AtlHwnd, 0, 0, 410, 303, sGetColor, 0, 1.0)
//下面这句用于分割字符串
dim MyArray
MyArray = Split(sFindcolor, "|")
//下面这句将字符串转换成数值
intX = Clng(MyArray(0)): intY = Clng(MyArray(1))
TracePrint "获取到颜色X坐标="& intX & ",Y坐标=" & intY
Getqzc = Plugin.Bkgnd.GetPixelColor(AtlHwnd, 12, intY + 6)
TracePrint "该群员管理员和群主位置的颜色参数为:" & Getqzc
sFindColor = Plugin.Bkgnd.GetPixelColor(AtlHwnd, 395, 285)
TracePrint sFindColor
Delay 200
If sFindColor = "FDF8F1" Then
Call Plugin.Bkgnd.LeftDoubleClick(AtlHwnd, intX + 12, intY + 6)
Delay 500
Call sender
Exit Do
ElseIf Getqzc = "ACD3FF" then
iAdmin = iAdmin + 1
// Call Plugin.Bkgnd.KeyPress(AtlHwnd, 40)
TracePrint "发现管理员"
Else
Call Plugin.Bkgnd.LeftDoubleClick(AtlHwnd, intX + 12, intY + 6)
Delay 500
Call sender
End If
Call Plugin.Bkgnd.LeftClick(AtlHwnd, intX + 12, intY + 6)
Delay 200
Call Plugin.Bkgnd.KeyPress(AtlHwnd, 40)
iNum = iNum + 1
Loop
//--------------------------------子程序-------------------------------------
Sub Register //插件注册
PutAttachment ".\plugin","*.dll"
PutAttachment ".\plugin\dm","*.bmp"
//PutAttachment ".\plugin\dm","*.txt"
PutAttachment ".\plugin\dm","dm.dll"
//↑PutAttachment释放附件
Call Plugin.RegDll.Reg(".\plugin\dm\dm.dll")
set dm = createobject("dm.dmsoft")
//↑大漠·注册
dm.SetPath ".\plugin\dm"
//dm.SetDict 0,"zk.txt"
Delay 40
End Sub
Sub OnScriptExit()
dm_ret = dm.UnBindWindow()
MsgBox "发送完成,共执行:"&iNum&"条,忽略管理员:"&iAdmin&",实际发送:"&isender&",忽略已发送:"&iunsender
End Sub
Sub checkQQ //检测是否只打开一个Q群
hwnd = split(hwnds,",")
If UBound(hwnd) > 0 Then
MsgBox "桌面只能保留一个推广的Q群,其他的请先关闭!"
EndScript
ElseIf hwnds = "" Then
MsgBox "请先打开一个需要群发的群再运行脚本!"
EndScript
End If
End Sub
Sub sender
Delay 1000
Rem one
hwnd = Plugin.Window.Foreground()
hwnd = Cstr(hwnd)
AtlHwnd = Cstr(AtlHwnd)
If hwnd = AtlHwnd Then
TracePrint "错误002"
TracePrint hwnd & ":" & hwnds & "........."
Delay 2000
Goto one
Else
If iFirst = true Then
Call Plugin.Window.Size(hwnd, 540,492) //设置窗口分辨率
iFirst = false
End If
Delay 100
KeyDown 17, 1 // ctrl + v 粘贴
KeyPress 86, 1
KeyUp 17, 1
Delay 800
KeyDown 18, 1 // art + s 发送
KeyPress 83, 1
KeyUp 18, 1
Delay 500
Call Plugin.Bkgnd.LeftClick(hwnd, 250,468)
Delay 500
isender = isender + 1
End If
End Sub
UserVar Hua1="发送的第一句话"
UserVar Hua2="发送的第二句话"
UserVar Hua3="发送的第三句话"
UserVar Hua4="发送的第四句话"
UserVar Hua5="发送的第五句话"
UserVar Yanshi=1000 "发送两句话之间的时间间隔,默认1000就是1秒"
//用一个变量来设置需要发送的话的内容
Dim Hua
//发送第一句
Hua = Hua1
Call FaSongXiaoXi()
Delay Yanshi
//发送第二句,以下雷同
Hua = Hua2
Call FaSongXiaoXi()
Delay Yanshi
Hua = Hua3
Call FaSongXiaoXi()
Delay Yanshi
Hua = Hua4
Call FaSongXiaoXi()
Delay Yanshi
Hua = Hua5
Call FaSongXiaoXi()
Delay Yanshi
EndScript
//发送消息的子程序
Sub FaSongXiaoXi()
//填上要发的话
SayString Hua
Delay 100
//按下Alt+S的QQ发消息热键,发送成功
KeyDown 18, 1
KeyPress 83, 1
KeyUp 18, 1
End Sub
-------------------------------------------以上是例子-------------------------------------------------
下面是我以前写过的QQ群群发,基于TM写的,TM版本忘记了,你可以参考下:
Call Register
iFirst = true
hwnds = dm.EnumWindow(0,"","TXGuiFoundation",2+4+8+16) //获取Q群句柄
Call checkQQ //检测Q群是否已经打开并且是否只打开一个Q群
//dm_ret = dm.SetWindowState(hwnds, 12) //激活窗口
dm_ret = dm.BindWindow(hwnds,"gdi","windows","windows",0) //绑定窗口
Call Plugin.Window.Size(hwnds, 600, 520) //设置窗口分辨率
Delay 500
dm.MoveTo 275, 60
Delay 800
dm.LeftClick
Delay 800
dm.MoveTo 258, 495
Delay 800
dm.LeftClick
Delay 800
cHwnd = Plugin.Window.Foreground()
Call Plugin.Bkgnd.LeftClick(cHwnd, 22, 205)
Delay 1500
AtlHwnd = Plugin.Window.FindEx(cHwnd, 0, "ATL:30A4FE48", "")
Call Plugin.Bkgnd.LeftClick(AtlHwnd, 60, 30)
Delay 800
sGetColor = Plugin.Bkgnd.GetPixelColor(AtlHwnd, 2, 20)
TracePrint "获取到的颜色为:" & sGetcolor
Dim isender , iunsender , iNum , iAdmin
isender = 0 : iunsender = 0 : iNum = 0 : iAdmin = 0
Do
sFindcolor = Plugin.Bkgnd.FindColorEx(AtlHwnd, 0, 0, 410, 303, sGetColor, 0, 1.0)
//下面这句用于分割字符串
dim MyArray
MyArray = Split(sFindcolor, "|")
//下面这句将字符串转换成数值
intX = Clng(MyArray(0)): intY = Clng(MyArray(1))
TracePrint "获取到颜色X坐标="& intX & ",Y坐标=" & intY
Getqzc = Plugin.Bkgnd.GetPixelColor(AtlHwnd, 12, intY + 6)
TracePrint "该群员管理员和群主位置的颜色参数为:" & Getqzc
sFindColor = Plugin.Bkgnd.GetPixelColor(AtlHwnd, 395, 285)
TracePrint sFindColor
Delay 200
If sFindColor = "FDF8F1" Then
Call Plugin.Bkgnd.LeftDoubleClick(AtlHwnd, intX + 12, intY + 6)
Delay 500
Call sender
Exit Do
ElseIf Getqzc = "ACD3FF" then
iAdmin = iAdmin + 1
// Call Plugin.Bkgnd.KeyPress(AtlHwnd, 40)
TracePrint "发现管理员"
Else
Call Plugin.Bkgnd.LeftDoubleClick(AtlHwnd, intX + 12, intY + 6)
Delay 500
Call sender
End If
Call Plugin.Bkgnd.LeftClick(AtlHwnd, intX + 12, intY + 6)
Delay 200
Call Plugin.Bkgnd.KeyPress(AtlHwnd, 40)
iNum = iNum + 1
Loop
//--------------------------------子程序-------------------------------------
Sub Register //插件注册
PutAttachment ".\plugin","*.dll"
PutAttachment ".\plugin\dm","*.bmp"
//PutAttachment ".\plugin\dm","*.txt"
PutAttachment ".\plugin\dm","dm.dll"
//↑PutAttachment释放附件
Call Plugin.RegDll.Reg(".\plugin\dm\dm.dll")
set dm = createobject("dm.dmsoft")
//↑大漠·注册
dm.SetPath ".\plugin\dm"
//dm.SetDict 0,"zk.txt"
Delay 40
End Sub
Sub OnScriptExit()
dm_ret = dm.UnBindWindow()
MsgBox "发送完成,共执行:"&iNum&"条,忽略管理员:"&iAdmin&",实际发送:"&isender&",忽略已发送:"&iunsender
End Sub
Sub checkQQ //检测是否只打开一个Q群
hwnd = split(hwnds,",")
If UBound(hwnd) > 0 Then
MsgBox "桌面只能保留一个推广的Q群,其他的请先关闭!"
EndScript
ElseIf hwnds = "" Then
MsgBox "请先打开一个需要群发的群再运行脚本!"
EndScript
End If
End Sub
Sub sender
Delay 1000
Rem one
hwnd = Plugin.Window.Foreground()
hwnd = Cstr(hwnd)
AtlHwnd = Cstr(AtlHwnd)
If hwnd = AtlHwnd Then
TracePrint "错误002"
TracePrint hwnd & ":" & hwnds & "........."
Delay 2000
Goto one
Else
If iFirst = true Then
Call Plugin.Window.Size(hwnd, 540,492) //设置窗口分辨率
iFirst = false
End If
Delay 100
KeyDown 17, 1 // ctrl + v 粘贴
KeyPress 86, 1
KeyUp 17, 1
Delay 800
KeyDown 18, 1 // art + s 发送
KeyPress 83, 1
KeyUp 18, 1
Delay 500
Call Plugin.Bkgnd.LeftClick(hwnd, 250,468)
Delay 500
isender = isender + 1
End If
End Sub
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询