hm ich hab da ein ähnliches Problem und hab mir auch schon die EnumWindows-Lösung angesehen. Nur stirbt mein Delphi 6
PE an dieser stelle:
Code:
EnumWindows(@EnumWinProc, Application.Handle);
Der cursor bleibt hinter dem Komma von @EnumWinProc stehen und die Fehlermeldung lautet:
Zitat:
Variable required
Ich bin da nun am Rätseln, was der mir eigentlich sagen will... Hier nochmal der Komplette Code, damit ihr mir helfen könnt
Code:
procedure TForm1.Button5Click(Sender: TObject);
begin
EnumWindows(@EnumWinProc, Application.Handle);
end;
function EnumWinProc(Wnd: hWnd): Boolean; StdCall;
var
WinCaption : Pchar;
WinHandle : string;
begin
GetMem(WinCaption, 255);
try
GetWindowText(Wnd, WinCaption, 255);
Result := True;
if (Trim(WinCaption) <> '') then
begin
WinHandle := IntToHex(Wnd, 6);
Form1.ListBox1.Items.add(WinHandle + ' : ' + WinCaption);
end;
finally
FreeMem(WinCaption, 255);
end;
end;
Hab diese Lösung schon in leichten Variationen 100mal im Netz gefunden, allerdings kommt es immer zu gleichem Fehler
Vermutlich hab ich Tomaten auf den Augen...
THX, so far...