Hi,
Ich habe es nun glorreich
geschafft mir einen "mitlesenden KeyHook" zu schreiben.
das ganze basiert auf einem Code den ich (glaube ich) von Flocke habe...
Delphi-Quellcode:
function LLKeyboardHookProc(nCode: Integer; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
begin
if nCode = HC_ACTION then
with PKbDllHookStruct(lParam)^ do
if Assigned(FConfig.OnHook) then FConfig.OnHook(Format('%4.4x %2.2x %2.2x %2.2x %10d', [wParam, vkCode, scanCode, flags, time]));
Result := CallNextHookEx(FCOnfig.Handle, nCode, wParam, lParam);
end;
procedure TMyKeyHook.Install;
begin
HookHandle := SetWindowsHookEx(WH_KEYBOARD_LL, LLKeyboardHookProc, hInstance, 0);
if HookHandle = 0 then RaiseLastOSError;
end;
procedure TMyKeyHook.UnInstall;
begin
if HookHandle <> 0 then begin
UnhookWindowsHookEx(HookHandle);
HookHandle := 0;
end;
end;
Nun möchte ich aber nicht nur mitlesen sondern auch den Tastendruck der reinkommt ändern.
geht das irgendwie?
muss ich dafür einfach nur lParam verändert an CallNextHookEx übergeben?