sendmessage的疑惑 讯息对话无法发送出去 请高手帮忙解惑一下
时间:2011-07-25
来源:互联网
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Declare Function GetForegroundWindow Lib "user32" () As Long
Private Declare Function GetWindowTextLength Lib "user32" Alias "GetWindowTextLengthA" (ByVal hwnd As Long) 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 FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hwnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Sub Timer1_Timer()
Dim hwnd2 As String
Dim leng As String
Dim b As Long
hwnd2 = FindWindowEx(0, 0, "CConvWndBase", vbNullString) '(CConvWndBase)<<即时通收发话窗口类名
'定义标题文字
leng = String(GetWindowTextLength(hwnd2) + 1, Chr$(0))
'取得一个窗体的标题(caption)文字,或者一个控件的内容(在vb里使用:使用vb窗体或控件的caption或text属性
GetWindowText hwnd2, leng, Len(leng)
Text1.Text = leng '印出抓到的即时通帐号
b = FindWindowEx(hwnd2, 0, "YIMInputWindow", vbNullString) '(YIMInputWindow)<<即时通发话窗口类名
'调用一个窗口的窗口函数,将一条消息发给那个窗口。
SendMessage b, WM_SETTEXT, 0, ByVal Text2.Text
Text2.Text = "你好"
End Sub
这只程式已经可以抓到即时通的帐号窗名 我把即时通收发话窗口定义为hwnd2 然后要调用hwnd2里的发话窗口出来
发送讯息 (YIMInputWindow) 可是怎么会发送不出去== 是我哪边有搞错 请高手指教一下 谢谢!!
Private Declare Function GetForegroundWindow Lib "user32" () As Long
Private Declare Function GetWindowTextLength Lib "user32" Alias "GetWindowTextLengthA" (ByVal hwnd As Long) 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 FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hwnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Sub Timer1_Timer()
Dim hwnd2 As String
Dim leng As String
Dim b As Long
hwnd2 = FindWindowEx(0, 0, "CConvWndBase", vbNullString) '(CConvWndBase)<<即时通收发话窗口类名
'定义标题文字
leng = String(GetWindowTextLength(hwnd2) + 1, Chr$(0))
'取得一个窗体的标题(caption)文字,或者一个控件的内容(在vb里使用:使用vb窗体或控件的caption或text属性
GetWindowText hwnd2, leng, Len(leng)
Text1.Text = leng '印出抓到的即时通帐号
b = FindWindowEx(hwnd2, 0, "YIMInputWindow", vbNullString) '(YIMInputWindow)<<即时通发话窗口类名
'调用一个窗口的窗口函数,将一条消息发给那个窗口。
SendMessage b, WM_SETTEXT, 0, ByVal Text2.Text
Text2.Text = "你好"
End Sub
这只程式已经可以抓到即时通的帐号窗名 我把即时通收发话窗口定义为hwnd2 然后要调用hwnd2里的发话窗口出来
发送讯息 (YIMInputWindow) 可是怎么会发送不出去== 是我哪边有搞错 请高手指教一下 谢谢!!
作者: ctjh900801a 发布时间: 2011-07-25
SendMessage不是这样用的吧= =
如果你是要自动打字上去的话,
请参考 http://www.codeproject.com/KB/library/InputManager.aspx
如果你是要自动打字上去的话,
请参考 http://www.codeproject.com/KB/library/InputManager.aspx
作者: x33007 发布时间: 2011-07-31
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28