2009-07-27 7 views
2

Heres mon code qui ne fonctionne pas:comment envoyer la souris cliquez sur la fenêtre réduite?

Private Const MOUSEEVENTF_LEFTDOWN = &H2 
Private Const MOUSEEVENTF_LEFTUP = &H4 

Private Declare Function FindWindow Lib "user32.dll" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Integer 
Private 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 

Dim wHandle As Long = FindWindow(vbNullString, "Ultima Online") 

PostMessage(wHandle, MOUSEEVENTF_LEFTDOWN, 0, 0) 
PostMessage(wHandle, MOUSEEVENTF_LEFTUP, 0, 0) 
+0

Utiliser SetForeGroundWindow api en combinaison avec FindWindow – user959631

Répondre

0

Je ne sais pas pourquoi ce code devrait fonctionner - il vous semble juste cliquer sur la fenêtre, pas sur un bouton spécifique.
Pour réduire les fenêtres, vous pouvez utiliser une autre fonction api: SetWindowPlacement, voir: http://www.codeproject.com/KB/dialog/Minimizewindow.aspx

Une autre idée: Si vous voulez une solution hacky vous pouvez envoyer les touches Alt + Espacen pour minimiser une fenêtre , mais cela est très hacky, et ne fonctionne que pour les machines anglaises:

SendKeys ("% n") ''//in vb6 
SendKeys.Send("% n") ''//in vb.net 
Questions connexes