Einzelnen Beitrag anzeigen

Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#35

Re: Keylogger und diakritische Zeichen

  Alt 1. Mai 2008, 06:38
Zitat von smallsmoker:
@tom: bei mir nicht ...
Ich bin doch etwas erstaunt, dass der Fehler bei Euch nicht auftritt.

Denn GetKeyState() kann doch auch negative Wert liefern und das TKeyboardState Array nur Werte > 0 hat, muss es doch zu einem RangeError kommen.

TKeyboardState = array[0..255] of Byte;
Mache nun mal vorläufig die Werte mit ABS() positiv.
Vielleicht hat ja jemand eine bessere Lösung.

Delphi-Quellcode:
function GetKeyboardState: TKeyboardState;
// Ersetzt Windows.GetKeyboardState, da diese ausserhalb der eigenen Anwendung
// scheinbar nicht die korrekten Modifiers liefert
var
  I: Integer;
begin
  for I:= Low(Result) to High(Result) do
  begin
    Result[I]`:= Abs(GetKeyState(i));
  end;
end;
Thomas
  Mit Zitat antworten Zitat