so können tastaturen events direkt an einen
Handle von einem
Gui geschickt werden:
Code:
If pos('PLAY',Command) > 0 then
begin
postmessage(FPowerDVDGUIHandle,WM_KEYUP,13,0);
MemoCommand.Lines.Add('PowerDVD Kommando: Play')
end
So können Fenster Handles ausgelesen werden Problem ist halt das richtige fenster zu finden und den FensterHandletitel zu finden. ich habe das mit winsight gemacht. Prob ist einfach das es ziemlich mühsam ist bis man den richtigen findet und es zum teil fenster gibt deren titel sich ändert:
Code:
function TForm1.FindWindowByTitle(WindowTitle: string): Hwnd;
var
NextHandle: Hwnd;
NextTitle: array[0..260] of char;
begin
{Findet einen Fensterhandle von einem Prozess. Das wird benötigt um die Tasten
events direkt an das richtige Fenster zu schicken ohne das noch andere Programme
äuf dieses Event reagieren.
}
// Erster Window
handle
NextHandle := GetWindow(Application.Handle, GW_HWNDFIRST);
while NextHandle > 0 do
begin
// Windowshandle Text auslesen
GetWindowText(NextHandle, NextTitle, 255);
if Pos(WindowTitle, StrPas(NextTitle)) <> 0 then
begin
Result := NextHandle;
Exit;
end
else
// Nächster Window
Handle
NextHandle := GetWindow(NextHandle, GW_HWNDNEXT);
end;
Result := 0;
end;