2016-06-23 9 views
-1

So eine kleine Hintergrundgeschichte ist, dass ich eine Maus (deathadder) habe, die glitching out ist, und manchmal einen einzigen Klick als zwei Klicks registriert. Ohne Erklärung. Es ist offensichtlich, dass dies ziemlich ärgerlich ist.Sperren von E/A-Antworten auf OS

Das Ziel besteht darin, einige Tests durchzuführen, um herauszufinden, wie schnell diese Mausklicks miteinander registriert werden. Wenn Sie zum Beispiel einmal klicken, wird die Sekunde automatisch innerhalb von .001 Nanosekunden registriert. Sobald ich diesen Wert erreicht habe, plane ich, das Betriebssystem daran zu hindern, während dieser Zeit irgendwelche Mausklicks zu registrieren, aber ich bin mir nicht sicher, wie ich I/Os für das Betriebssystem verhindern kann.

Das Beobachten von Klicks ist einfach zu bestimmen, aber wie kann ich verhindern, dass ein Button/Mausklick für das Windows-Betriebssystem registriert wird?

+0

Sie wirklich glauben Sie, dass nur ein Betriebssystem in Existenz gibt es, oder dass jedes Betriebssystem in der Welt eingesetzt Griffe Ereignisprozesse Maus auf genau dieselbe Weise, so dass eine einzige Antwort für jeden vorhandenen Computer gilt? –

+0

Entschuldigung soll angeben, dass ich auf Windows ziele – QQMouse

+2

Nicht was Sie gefragt haben, aber haben Sie daran gedacht, die Maus stattdessen zu reparieren? In der Regel ist das Problem ein halb gebrochener Knopf im Inneren, den Sie leicht durch einen neuen ersetzen können. – HolyBlackCat

Antwort

2

Ich glaube, Sie müssten dies als einen oberen Filtertreiber implementieren. Es ist ein ziemlich komplexer und heimtückischer Prozess, und ich würde es nur empfehlen, wenn Sie es aus reiner Neugier tun würden. Wie @HolyBlackCat sagt, ist das Reparieren der Maus oder das Kaufen eines neuen die vernünftigen Wahlen. Aber was wäre das Leben ohne Laune?

hier ein paar Links, die Sie erhalten begonnen:

https://msdn.microsoft.com/en-us/library/windows/hardware/jj128324(v=vs.85).aspx https://msdn.microsoft.com/en-us/library/windows/hardware/ff545890(v=vs.85).aspx

+0

Danke, dass du mich in die richtige Richtung gelenkt hast! Obwohl es die Aufgabe beenden wird, wer genießt nicht eine gute Herausforderung? – QQMouse