Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Tastatur hooks: in manchen Anwendungen doppelte Buchstaben (https://www.delphipraxis.net/138628-tastatur-hooks-manchen-anwendungen-doppelte-buchstaben.html)

changlee 13. Aug 2009 22:10


Tastatur hooks: in manchen Anwendungen doppelte Buchstaben
 
Hallo,

ich habe vor eine Art Makro-Rekorder zu schreiben, um einen Prozess sehr oft automatisch hintereinander ausführen zu lassen.
Hab mich hier im Forum etwas schlau gelesen und verwende zum Abfragen der Tastatur key hooks (siehe Quelltext unten).

Wenn ich etwas im Text-Editor schreibe werden die Buchstaben ganz normal geloggt. Wenn ich jedoch etwas in mozilla eingebe, dann werden die Buchstaben doppelt geloggt. Beim schreiben im Mailfenster von Outlook sogar vierfach.

Kann mir jemand sagen, wie ich diese Problem in Griff bekomme?

Hier mein Quelltext:

Delphi-Quellcode:
function KeyboardHookProc(nCode: Integer; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
var s:string;
begin
//es ist ebenfalls moeglich die Bearbeitung an eine Bedingung zu knuepfen
  Result := CallNextHookEx(HookHandle, nCode, wParam, lParam);
  case nCode < 0 of
    TRUE: exit; //wenn code kleiner 0 wird nix gemacht
    FALSE:
      begin
        //Hier kann jetzt alles bearbeitet werden
        if (lParam and (1 SHL 31) <> 0) then begin
          s:=GetCharFromVirtualKey(wParam);
          AppendStringToFile(s,filename);
        end;
      end;
  end;
end;

timurlenk 14. Aug 2009 13:08

Re: Tastatur hooks: in manchen Anwendungen doppelte Buchstab
 
das sieht ok aus.. ich habs nur ein klein bischen anders gemacht indem ich mit char(wparam) gearbeitet hab

in der dll habe ich nicht in die datei geschrieben ich habs über die exe gemacht.. mit sendmessage und dann hab ichs in der exe weiterverarbeitet

sollte aber fast das selbe sein

wenn du dir mal ein anderes hook beispiel ansehen willst such mal bei google nach library HkLib; delphi

Apollonius 14. Aug 2009 13:12

Re: Tastatur hooks: in manchen Anwendungen doppelte Buchstab
 
Du könntest testweise mal den LParam mitloggen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:21 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz