Module pour trouver les hwnd des fenetres

Contenu du snippet

C'est un module assez simple. il suffit d'entrer une partie du nom de la fenetre et vous avez son Handle.

Source / Exemple :


'PREMIER MODULE:
Dim o(2000)

Public Function GethWndFromTitle(ByVal Word As String, ByVal place As Long)

For j = 1 To 2000 'generalement les handle ne depassent pas 2000
 a = TitreFenetre(j)
 b = Len(a)
 echec = 0
 longueur = Len(Word)
 
 For i = 1 To b
  d = Mid(a, i, longueur)
  If d = Word Then aa = aa + 1:  o(aa) = j 'Recherche des titres disponibles et de leurs hWnd
  
 Next i
Next j
GethWndFromTitle = o(place)
End Function

'2eme module:
Public Declare Function GetWindowText& Lib "USER32" Alias "GetWindowTextA" _
(ByVal hwnd&, ByVal lpString As String, ByVal aint&)

Public Function TitreFenetre(ByVal hwnd As Long) As String
    Dim TitleText As String
    Dim TxtLength As Long
    TitleText = String(255, Chr(0))
    TxtLength = 255
    ret = GetWindowText(hwnd, TitleText, TxtLength)
    TitreFenetre = Mid(TitleText, 1, ret)
End Function

Conclusion :


C'est un truc simple et pratique. Faut pas chercher a faire trop complique

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.