Salve,
ho fatto una ricerca sul forum per cercare aiuto riguardo alla API EnumWindows, ho provato il suggerimento dato qui, ma non mi funziona, va in crash.

Ho tentato quest'altro quest'altro codice trovato in rete, non va in crash ma ottengo solo un messaggio vuoto...

codice:
Public Declare Function EnumWindows Lib "user32" (ByVal lpEnumFunc As Long, ByVal lParam As Long) As Long
Public Declare Function GetWindowTextLength Lib "user32" Alias "GetWindowTextLengthA" (ByVal _
hwnd As Long) As Long
Public Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, _
ByVal lpString As String, ByVal cch As Long) As Long '// la funzione callback

Public Function TestoFinestre(ByVal hwnd As Long, ByVal lParam As Long) As Long
Dim LTesto As Long, TBuffer As String '// lungh. del testo e della memoria che lo contiene
    LTesto = GetWindowTextLength(hwnd) + 1 '// richiama l'API per ottenere la lunghezza
    TBuffer = Space(LTesto) '// crea uno spazio in memoria pari alla lunghezza del testo
    GetWindowText hwnd, TBuffer, LTesto '// richiama l'API per ottenere il testo
    MsgBox Left(TBuffer, LTesto - 1) '// mostra il testo della barra del titolo
    Form1.List1.AddItem TBuffer
End Function
   
'...
Private Sub command2_click()
EnumWindows AddressOf TestoFinestre, 0
End Sub
Sbaglio qualcosa io o c'è qualche problema che non capisco con questi codici ?

Grazie.