Hallo,
erstmal nochmals Danke für Deine Antwort, ich versuche es zunächst mit dem SetWindowsHookEx.
Beim Stöbern in diesem Forum habe ich da auch einen Beitrag von Dir gefunden...
Code zum Thema abfangen von WM_CLOSE bzw. WM_QUIT
daraus habe ich dann folgendes gemacht:
Code:
function EditD2Window (Code: Integer; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
var
Msg: PMsg;
begin
if Code = HC_ACTION then
begin
Msg := PMsg(lParam);
if Msg^.message = WM_KILLFOCUS then
begin
Msg^.message := WM_COMMAND;
Msg.wParam := WM_NULL;
Msg.lParam := 0;
Result := 1;
Exit;
end;
end;
Result := CallNextHookEx(MsgHook, Code, wParam, lParam);
end;
begin
...
ProcId := GetWindowThreadProcessId (GeneralD2Handle, ProcId);
MsgHook := SetWindowsHookEx (WH_GETMESSAGE, @EditD2Window, 0, ProcId);
...
end;
wobei GeneralD2Handle definitiv das richtige
Handle und ProcId die richtige ProzessId zu meinem D2-Fenster ist.
Funktionieren will das Ganze aber dennoch nicht - irgendwelche Verbesserungsvorschläge?