guiguibon
Messages postés2Date d'inscriptionmercredi 7 mars 2001StatutMembreDernière intervention16 novembre 2003
-
23 nov. 2002 à 03:29
bobjay
Messages postés66Date d'inscriptionmercredi 19 mai 2004StatutMembreDernière intervention 1 avril 2007
-
5 janv. 2006 à 22:31
g essaye getfocus, getactivewindow
et j'y arrive pas merci de m'aider
je veux trouver le handle d'une application que j'ai lancé a partir de vb av shell
lscherer
Messages postés19Date d'inscriptionjeudi 21 mars 2002StatutMembreDernière intervention 3 novembre 2008 26 nov. 2002 à 13:46
Si tu connais le nom de ton application , c'est tout simple :
Private Declare Function GetWindow Lib "user32" (ByVal hWnd As Long, ByVal wCmd 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 IsWindowVisible Lib "user32" (ByVal hWnd As Long) As Long
Private Declare Function GetDesktopWindow Lib "user32" () As Long
Private Sub Command1_Click()
Dim hWnd As Long
Dim Titre_Fenetre As String * 255
Dim TitreFen As String
Dim j As Long
List.Clear ' On vide la listbox
hWnd = GetWindow(GetDesktopWindow(), 5)
Do While (Not IsNull(hWnd)) And (hWnd <> 0) 'Passe en revue chaque fenêtre
Titre_Fenetre = String(255, 0) 'Formate la chaine destinée à accueillir le titre de la fenêtre
ret = GetWindowText(hWnd, Titre_Fenetre, 255) 'récupère le titre de la fenêtre et le nombre de caractères de ce titre
If Titre_Fenetre <> String(255, 0) Then 'Si le titre n'est pas vide
If IsWindowVisible(hWnd) = 1 Then 'Pour ne tenir compte que des fenêtres visibles (regardez ce que ça donne en retirant cette condition)
TitreFen = Titre_Fenetre 'récupère le titre de la fenêtre
TitreFen = Left(TitreFen, ret) 'sans les caractères supplémentaires finaux
j = j + 1
If Val(j) < 10 Then j = "0" & j
List.AddItem TitreFen & " [ " & hWnd & " ]" 'stocke le tout dans une listbox
End If
End If
hWnd = GetWindow(hWnd, 2) 'cherche la fenêtre suivant
Loop
End Sub
C'est quelques part dans les codes sources, mais je vais t'éviter la peine de chercher.