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...
Sbaglio qualcosa io o c'è qualche problema che non capisco con questi codici ?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
Grazie.

Rispondi quotando