So, ich hab das jetzt versucht, nur leider will es einfach nicht funktionieren
Hier mein Code:
Delphi-Quellcode:
type
THandleArray =
array of THandle;
function FindAllWindows(
const WindowCaption:
String): THandleArray;
var
Res: THandleArray;
function _EnumWindowProc(_hwnd: HWND; _lparam: LPARAM): Boolean;
// stdcall; braucht man das ?? es geht mit und ohne nicht
var
Title:
String;
Len: Integer;
begin
if(_hwnd = 0)
then
begin
Result := False;
Exit;
end;
Len := GetWindowTextLength(_hwnd)+1;
SetLength(Title, Len);
GetWindowText(_hwnd, PChar(Title), Len);
Title := Trim(Title);
if (Title = WindowCaption)
then // Hier kommt eine AV
begin
SetLength(Res, Length(Res)+1);
Res[Length(Res)-1] := _hwnd;
end;
end;
begin
SetLength(Res, 0);
EnumWindows(@_EnumWindowProc, 0);
// was muss man als 2. Parameter übergeben ??
Result := Res;
end;