怎么我这里postmessage没用?

来源:百度知道 编辑:UC知道 时间:2024/06/19 11:06:51
模块
Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Public 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 Const WM_KEYDOWN = &H100
Private Const WM_KEYUP = &H101

Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long

窗体
Dim a As Integer
Dim wnd As Long
Private Sub Form_Load()
Dim wnd As Long
wnd = FindWindow("SciCalc", "计算器") '获取窗口句柄在这里修改想要窗口标题,我是用记事本测试的
If wnd = 0 Then
MsgBox "该窗口未运行", 16, "Error"
Unload Me
End If

朋友,前几天没空,今天给你写了个你看看!!

'-----模块申明----
Public 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
Public 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
Public Const WM_KEYDOWN = &H100
Public Const WM_KEYUP = &H101
Public Const WM_STAR = &H102
Public Const WM_SYSKEYDOWN = &H104
Public Const WM_SYSKEYUP = &H105

'------窗口里建command按扭2个------
Private Sub Command1_Click()
'向计算器发消息
Dim aa As Long: Dim bb As String: Dim i As Integer
aa = 0
bb = "SciCalc" '计算器
aa = FindWindowEx(0, 0, bb, vbNullString)
If aa = 0 Then
MsgBox "计算器没启动!", vbOKOnly, "提示"
Exit Sub
End If

For i =