<> | Taste abfangen

  • VB.NET

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von ~blaze~.

    SeriTools schrieb:

    GetAsyncKeyState ist sowieso eine schlechte Art, Tasten abzufangen, da man mit Timer o.ä. arbeiten muss. Ein Keyboard-Hook ist da auch besser, dann sollte die Taste auch erkannt werden. ;)
    Wie bitte? :huh:

    Was ist an einem Thread bitte schlecht? Außerdem werden Hooks von jedem scheiss Virenprogramm erkannt.
    Das kann man ja keinem Zumuten, da wird ein Screenshotprogramm aufeinmal als Virus erkannt -> geht ja mal gar nicht .

    Wenns nicht so ist, belehr mich eines besseren.

    Ich find KeyBoard Hooks bis jetzt grausam.
    Hi
    die "Alternative", wenn man es so bezeichnen mag, mit dem Timer würde ich eher eine Zumutung nennen. Sowas ist grausam. Während ein Hook auf Events basiert ist und damit Daten dann erhält, wenn sie benötigt werden, schlägt GetAsyncKeyState einfach wild alle paar Millisekunden zu. Die These, dass Virenprogramme Hooks als Keylogger identifizieren können, kann ich zwar nicht belegen, noch entkräften (habe keine Erfahrung damit), aber es ist eine plausible Vorgehensweise.
    Ich an deiner Stelle würde einfach Hooks verwenden, denn die sind sauber und nicht so fehleranfällig.
    Das sind übrigens die Werte, die ich bei der Ausgabe der KeyData-Eigenschaft im KeyDown-Event erhalten habe.
    < = OemBackslash
    > = OemBackslash + Shift
    | = Control + Alt + OemBackslash

    Gruß
    ~blaze~