Option Explicit Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long Private Declare Function SendMessage& Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) Private Declare Function SendMessageBynum& Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) Private Declare Function SendMessageByString& Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As String) Const WM_CLOSE = &H10Private Sub Command1_Click() Dim myHandle As Long Dim myMsg As Long Dim myParam As Long 'dim myParam 'myHandle= 'Dim rttitle As String * 256 myHandle = FindWindow("Form2", vbNullString) SendMessage myHandle, WM_CLOSE, 1, 1 End SubPrivate Sub Command2_Click() Form2.Show End Sub 你先看看,具体明天给你答复!
句柄有什么用每次又不一样??
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function SendMessage& Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any)
Private Declare Function SendMessageBynum& Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long)
Private Declare Function SendMessageByString& Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As String)
Const WM_CLOSE = &H10Private Sub Command1_Click()
Dim myHandle As Long
Dim myMsg As Long
Dim myParam As Long
'dim myParam
'myHandle=
'Dim rttitle As String * 256
myHandle = FindWindow("Form2", vbNullString)
SendMessage myHandle, WM_CLOSE, 1, 1
End SubPrivate Sub Command2_Click()
Form2.Show
End Sub
你先看看,具体明天给你答复!
试了一下,Form1杀不掉Form2~~ luolovegui(东方不败) ,我给你发了段消息,你看了没有??
网吧你还有心思看这个??
佩服啊~
PostMessage( hWnd, WM_CLOSE, ByVal 0&, ByVal 0& )
PostMessage( hWnd, WM_SYSCOMMAND, ByVal SC_CLOSE, ByVal 0& )
你说窗口是从上面下来的,你可以先来一个虚拟按了一下右键,然后发一个WM_CLOSE消息就可以了。
鼠标虚拟用mouse_event()函数,然后马上用鼠标位置得到句柄。然后再来一个SendMessage()发一个WM_CLOSE。就可以了。
我相信这样是一定可以的。还有问题的话我可以给你代码。不过这两天可能不行,我要回家玩玩。不要说我了,我在网吧也是打发时间,为了等女朋友呢。网吧没事就想想呀