'添加 Text1 Command1 List1
'在Text1输入欲检测的 QQ 号
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
Private Declare Function GetWindow Lib "user32" (ByVal hwnd As Long, ByVal wCmd As Long) As Long
Private Declare Function GetWindowThreadProcessId Lib "user32" (ByVal hwnd As Long, lpdwprocessid As Long) As Long
Private Declare Function GetClassName Lib "user32" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) As Long
Private Declare Function TerminateProcess Lib "kernel32" (ByVal hProcess As Long, ByVal uExitCode As Long) As Long
Private Declare Sub CloseHandle Lib "kernel32" (ByVal hPass As Long)
Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessID As Long) As Long
Const PROCESS_TERMINATE = 1 '关闭进程
Const MAXLEN = 255
Const GW_HWNDNEXT = &H2
Dim aa$, strBuffer$, intCount%, allhwnd&, qqhwnd&, qqproid&, hw&, proid&, cnt&, idProc&, rttitle As String * 256
Private Sub Form_Load()
Text1.Text = ""
End Sub
Private Sub Command1_Click()
hw = FindWindow("#32770", vbNullString) '以类名查找Hwnd
cnt = GetWindowText(hw, rttitle, 255)
allhwnd = FindWindow("#32770", vbNullString)
proid = ProcIDFromWnd(allhwnd)
List1.Clear
Do Until allhwnd = 0
DoEvents
allhwnd = GetWindow(allhwnd, GW_HWNDNEXT) '开始找下一个窗体句柄
If GetCaptionFromHwnd(allhwnd) <> "" Then
'If ProcIDFromWnd(allhwnd) = proid Then List1.AddItem CStr(allhwnd) & "," & getclassnm(allhwnd) & "," & GetCaptionFromHwnd(allhwnd)
List1.AddItem CStr(allhwnd) & "," & getclassnm(allhwnd) & "," & GetCaptionFromHwnd(allhwnd)
End If
Loop
Call chkqq
End Sub
Function getclassnm(WinWnd As Long) As String
Dim Ret$, RetVal&, lpClassName$
lpClassName = Space(256)
RetVal = GetClassName(WinWnd, lpClassName, 256)
getclassnm = Left(lpClassName, RetVal)
End Function
Private Function GetCaptionFromHwnd(hwnd As Long) As String
strBuffer = String$(MAXLEN - 1, 0)
intCount = GetWindowText(hwnd, strBuffer, MAXLEN)
If intCount > 0 Then GetCaptionFromHwnd = Left$(strBuffer, intCount)
End Function
Function ProcIDFromWnd(ByVal hwnd As Long) As Long
GetWindowThreadProcessId hwnd, idProc
ProcIDFromWnd = idProc
End Function
Sub chkqq()
Dim s
qqproid = 0
For i = 0 To List1.ListCount - 1
aa = Trim(List1.List(i))
s = Split(aa, ",")
If InStr(LCase(s(2)), "qqmusic") > 0 Then
If CStr(Val(s(2))) = Trim(Text1.Text) Then
qqproid = Val(s(0))
Exit For
End If
End If
Next i
If qqproid > 0 Then
Rtn = MsgBox(Text1.Text & " 已登录, 您确定要关闭吗?", vbYesNo, "CBM666 的强制关闭QQ")
If Rtn = 6 Then
proid = ProcIDFromWnd(qqproid)
qqhwnd = OpenProcess(PROCESS_TERMINATE, False, proid)
TerminateProcess qqhwnd, 1
CloseHandle qqhwnd
MsgBox Text1.Text & " 已关闭"
End If
Else
MsgBox Text1.Text & " 未登录或QQ没打开"
End If
End Sub
分享到:
相关推荐
- `/pid PID号`表示指定进程ID; - `/f`表示强制结束进程。 例如,如果需要终止PID为1234的进程,可以运行: ``` taskkill /pid 1234 /f ``` 这样,占用相应端口的进程就会被强制关闭。 ### 总结 通过以上步骤...
在这个“使用广播机制仿制QQ强制下线功能”的场景中,我们主要探讨如何利用BroadcastReceiver来模拟类似QQ的用户强制下线操作,并且这个过程会涉及到用户界面的弹窗提示。 首先,我们需要创建一个BroadcastReceiver...
标签中的"挂QQ"通常指的是通过某种方式让QQ在iPhone后台持续运行,而不会因为系统资源管理被强制关闭。一种常见的方法是使用第三方助手或插件,这些工具可能会模拟用户活动,欺骗系统认为QQ正在被使用,从而保持其...
11-查看指定网页的请求地址和跳转地址,可与指定QQ号进行聊天。 12-可以对指定主机发送消息。 13-可以随时更新各个选项的记录数目,可以手动设置保存记录的数目和显示记录的数目。 14-可以对监视的网页类型进行选择...
一旦登录成功,用户的QQ客户端将被强制下线,并弹出提示。开发者可以通过使用其他QQ号码登录来验证目标QQ号码是否已经成功登录。最后,使用`curl_close()`关闭cURL会话。 值得注意的是,文章中提到了一个概念:...
系统配置,指定如下系统运行模式:多用户模式手动切换,可启动/关闭新留言本申请模式。新注册模式手动切换,可启动/关闭新用户注册,以开放/保护留言本。自由留言模式手动切换,可启动/关闭用户不用密码发言功能,也...
在这个示例中,824进程被识别为QQ,并且已经被关闭。 如果在任务管理器中找不到对应的PID,或者需要更精确地操作,你可以通过命令行来杀死指定的进程。使用`tasklist`命令可以列出所有运行的进程及其PID,然后使用`...
标题: Python for Android 中文 API 根据提供的文件信息,这份文档似乎是关于如何在Android...文档中提及的QQ号和网址可能是作者或项目组的联系方式和资源存放地址,开发者可以通过这些信息获取更详细的帮助和资源。
官方QQ群:92716369 ------------------------ -------------------------- ------------------------------ .版本 2 .子程序 按键, , 公开, 执行模拟按键(无返回值) .参数 键代码, 整数型, , 键代码 .参数 状态...
36. CTRL+Alt+S:自定义保存网页内容到指定文件夹。 熟练掌握这些快捷键,不仅可以提升电脑操作效率,还可以让您的工作更加流畅,尤其是在软件开发、编程或网页浏览等需要频繁使用键盘的场景下。通过习惯使用快捷键...
13. 对于系统内置账号的缺省口令,口令应符合复杂度的要求,如果不能满足口令复杂度则需要在用户首次登录时强制修改。正确。 系统内置账号的缺省口令需要符合复杂度的要求,以确保账号的安全性。 14. 一个对象的...
QQ号中发送信息** - **快捷键**: `Ctrl + 回车` - **功能**: 在QQ聊天窗口中快速发送消息。 **29. 快速定位** - **快捷键**: `Ctrl + Home` (文件头) / `Ctrl + End` (文件尾) - **功能**: 快速跳转到文档的...
- **版本号**:创建函数时,默认版本号并不是1,而是需要用户明确指定。 18. **Cloud DB数据加密**: - **加密粒度**:Cloud DB提供的本地数据加密功能是以Schema为单位进行设置的,并非按对象进行。 19. **...
Win7-64位系统的安装过程稍微复杂,需要先按照32位系统的步骤进行,安装后会出现问题提示,这时在设备管理器中驱动会显示感叹号。接着,打开64位驱动文件夹中的dseo13b软件,按照提示进行操作,启用测试模式,签署...
优化 后台开启强制认证营业执照后,保存企业基本资料引导跳转到认证页 优化 套餐图标可在后台上传修改 优化 企业logo上传后可清除 优化 删除腾讯微博分享按钮 优化 快速注册极验遮罩层 优化 去除部分默认伪静态链接...
- QQ:Ctrl+Alt+A 截取屏幕指定区域。 - 360浏览器:Ctrl+Shift+X 截图并保存到剪贴板。 在文本编辑中,还有更多快捷键,如: - Ctrl+S 保存文件。 - Ctrl+W 关闭当前文档。 - Ctrl+N 创建新文档。 - Ctrl+O 打开...
- `cut`命令用于从一行中截取特定字段,如`cut -d '分隔符' -f 字段号`。 以上是关于Linux基础命令的一些详细介绍,包括GCC的使用、Vim编辑器的操作以及一些常用的Linux命令。这些内容对于初学者来说是非常有用的...