"Fake Keys" erstellen, die der Computer als echt interpretiert?


20

Erläuterung

Okay, das ist also ein Foto des allgemeinen Layouts einer Tastatur.

Ich frage mich, ob es möglich ist, zusätzliche Tasten auf einer anderen Tastatur als den Standardtasten zu emulieren. Zum Beispiel könnte ich meinen Computer so täuschen, dass meine Tastatur auch drei zusätzliche Tasten mit den Bezeichnungen FK1, FK2 und FK3 enthält.

Diese drei zusätzlichen Tasten wären keine Buchstabentasten wie Start, Einfügen, Bild auf usw.
Grundsätzlich würden sie nichts tun, es sei denn , sie wären für etwas bestimmt. Wenn ich beispielsweise in einem Programm einen Hotkey für die Verwendung von FK1 festlegen würde , würde er diesen registrieren.

Warum?

Ich bin froh, dass du gefragt hast. Ich spiele oft ein Spiel namens ArmA 3 , und diejenigen von Ihnen, die mit dem Spiel vertraut sind, wissen, dass es fast jede Taste auf der Tastatur belegt.
Um mit meinen Freunden in diesem Spiel zu kommunizieren, benutze ich TeamSpeak. Ich habe ein Soundboard für Teamspeak und möchte in der Lage sein, verschiedene Sounds mithilfe von Hotkeys zu aktivieren, anstatt Alt-Tabs und Klicks auszuführen. In ArmA sind jedoch praktisch keine freien Tasten mehr für alle von mir verwendeten Mods vorhanden.

Selbst wenn Sie diese "gefälschten Schlüssel" erstellen könnten, wie würden Sie sie im Spiel verwenden, wenn sie nicht auf einer tatsächlichen Tastatur wären?

Hervorragende Frage .
Meine Tastatur ist eine Logitech G910 Orion Spark, auf der sich 27 Makros befinden. Ich gehe davon aus, dass ich jedes dieser Makros so einstellen kann, dass es während der Verwendung auf den falschen Tastaturtasten aufruft.

Das ist wahrscheinlich sehr verwirrend zu lesen, aber ich habe mein Bestes gegeben.

Windows 10 Pro (x64)


1
Dies ist ein interessantes Rätsel ...
Wogsland

könnte ich vorschlagen, eine Tastatur mit benutzerdefinierten Tasten zu kaufen, Sie können sie bekommen. Beispiel; amazon.co.uk/Programmable-aLLreLi-Mechanical-Keyboard-Gameboard/…
Robert Pounder

1
Die Bilder, die Sie beigefügt haben, sind NICHT von einer US-Standardtastatur. Ich kann nicht glauben, dass Sie den grundlegendsten Teil dieses FALSCHEN haben. Die Standardtastatur ist die IBM-PC-kompatible Tastatur - im Grunde eine Desktop-Tastatur in voller Größe mit zwei WINDOWS-Tasten. Sie haben hier eine Apple-eigene Tastatur abgebildet. Das ist NICHT die Standardtastatur. Sie sollten dies beheben; Ihre Frage macht im Moment absolut keinen Sinn, da Sie nach Standardtastaturen gefragt haben und dann Diagramme von Nicht-Standardtastaturen beigefügt haben. Sie sind besser dran, diese Bilder zu entfernen, wenn Sie tatsächlich nach Standardtastaturen fragen
InterLinked

Antworten:


15

Wenn Sie eine Taste auf Ihrer Tastatur drücken, generiert die Hardware einen "Scan-Code", der von der Software als bestimmter Tastendruck interpretiert wird.

Neuzuweisung von Schlüsseln

Mit KeyTweak können Sie den Tastendruck, den Windows aus jedem Scan-Code interpretiert, neu zuweisen, indem Sie entsprechende Registrierungseinträge hinzufügen.

Leider können Sie keine zusätzlichen gefälschten Schlüssel hinzufügen. Am ehesten wird es möglich sein, die Medien- / Web-Steuertasten einiger Tastaturen neu zuzuweisen. Außerdem können Sie keine Tastencodes zuweisen, die Ihre Tastatur normalerweise nicht verwendet. Wenn Sie also eine US-Tastatur haben, können Sie weder Ó noch £ zuweisen. Sie können also immer noch nur die normalen Schlüsselbuchstaben verwenden, die Sie für erschöpft halten.

Es fälschen

Mit AutoHotkey können Scan-Codes und ungewöhnliche Symbole von Skripten generiert werden.

Dieses Skript generiert £, wenn Win + p gedrückt wird (ich habe das Symbol aus dem Internet entfernt und es in den Texteditor eingefügt, den ich zum Erstellen des Skripts verwendet habe):

#p::
send, £

Abhängig von Ihrem Spiel können Sie möglicherweise ein Skript wie dieses verwenden, um £ als Schlüssel für Ihr Spiel zu erhalten. Wenn das Spiel jedoch darauf wartet, dass tatsächliche Tastatur-Scan-Codes generiert werden, funktioniert dies nicht. Es hängt davon ab, wie das Spiel mit der Hardware interagiert.

Glücklicherweise kann AutoHotkey auch Tastaturscancodes generieren. Dieses Skript generiert ein Leerzeichen, wenn Win + p gedrückt wird, da der Scan-Code 39 (hex) ein Leerzeichen ist (siehe Liste der Scan-Codes ).

#p::
send, {sc39}

AutoHotkey bietet auch eine andere Methode zum Generieren virtueller Schlüssel. Ich habe den Unterschied nicht untersucht, aber dieses Skript generiert Speicherplatz mit einem virtuellen Schlüssel, wenn Sie win + p drücken:

#p::
send, {vk20}

In dieser Referenz werden alle virtuellen Schlüsselcodes aufgeführt, einschließlich vieler nicht standardmäßiger Schlüssel, die Sie noch nicht verwendet haben: https://autohotkey.com/board/topic/98757-how-to-create-a-new-virtual- Schlüssel/

Sie können versuchen, ein Skript zu erstellen, das einen nicht standardmäßigen virtuellen Schlüssel an Ihr Spiel sendet. Wenn das Spiel es registriert und Sie es auf seiner Seite zum Einrichten der Tastatur speichern können, wird es wahrscheinlich funktionieren.

Der letzte Teil des Puzzles besteht darin, dass die Logitech-Makros das AutoHotkey-Skript aufrufen, das den virtuellen Schlüssel generiert. Sie würden ein AutoHotkey-Skript ohne Tastenkürzel erstellen, damit es beim Ausführen sofort ausgelöst wird - wie z

send, {vk7B}

oder

send, £

Ordnen Sie dem Autohotkey-Programm * .ahk-Dateien zu, und rufen Sie dann das Logitech-Makro auf, um das gespeicherte Skript zu öffnen.

Hinweis: Ich habe dies in keinem Spiel getestet. Es wird wahrscheinlich unterschiedliche Ergebnisse in verschiedenen Spielen geben - abhängig davon, was sie als gültige Einträge akzeptieren. Im obigen Link zu den virtuellen Schlüsseln diskutieren die Leute fast genau, was Sie tun möchten, und scheinen einige Erfolge mit der Verwendung von F13-F24-Schlüsseln erzielt zu haben. Probieren Sie diese also zuerst aus.

vk7B    sc58    F12
vk7C    sc64    F13
vk7D    sc65    F14
vk7E    sc66    F15
vk7F    sc67    F16
vk80    sc68    F17
vk81    sc69    F18
vk82    sc6A    F19
vk83    sc6B    F20
vk84    sc6C    F21
vk85    sc6D    F22
vk86    sc6E    F23
vk87    sc76    F24

BEARBEITEN: Wie in den Kommentaren verlangt; Ein einfaches Skript zum Erstellen von F13 könnte folgendermaßen aussehen:

b::
send, {vk7C}

Jedes Mal, wenn Sie 'b' drücken, während dieses Skript aktiv ist (in Ihrer Taskleiste neben der Uhr), wird F13 gesendet. Dieses Skript bleibt aktiv und wird jedes Mal ausgeführt, wenn Sie 'b' drücken, bis Sie es beenden. Sobald das Spiel F13 im Setup-Schlüssel registriert hat, beenden Sie dieses Skript und erstellen Sie eines wie das folgende, das Logitech aufrufen soll:

send, {vk7C}

Dieser bleibt nicht aktiv, er wird bei jedem Aufruf einmal ausgeführt und dann beendet.


Das sieht genau so aus, wie ich es brauche. Ich bin jedoch völlig im Programm verloren. Ich habe eine .AHK-Datei erstellt. Die erste Zeile sagt #p :: und die zweite sagt send, £ Das sollte doch funktionieren, oder? Oder fehle ich etwas völlig. Könnten Sie, wenn möglich, ein Beispielskript bereitstellen? So etwas wie ein Skript, das dem Computer mitteilt, wann immer WIN-F1 gedrückt wird, um sich als F13 zu registrieren, würde für mich ausreichen, um daraus zu bauen. Vielen Dank :)
Josh Silveous

Die AutoHotKey-Hilfe (AutoHotkey.chm im Programmordner) ist ziemlich gut. Der Eintrag in der Sendefunktion und der HotKey-Eintrag sind beide gute Lesevorgänge. Ich werde auch die Antwort aktualisieren, um win-F1 -> F13 einzuschließen.
Sir Adelaide

Wenn KeyTweak keine neuen Schlüssel zulässt, Sie sie aber verschieben können, können Sie dann einen zusätzlichen virtuellen Schlüssel erhalten, indem Sie das Layout für Großbritannien übernehmen und die Schlüssel entsprechend dem Layout für die USA verschieben?
user1937198

Es gibt jedoch Tasten, die auf den meisten Tastaturen nicht vorkommen, z. B. F24 , wie sie von Tom Scott für seine Emoji-Tastatur und von Taran von Linus Tech Tips für seine Video-Editor-Makros verwendet werden.
TRiG

1

Entschuldigung für die verspätete Antwort. Ich musste auf die Funktionstasten nach F12 zugreifen, was die aktuellen Tastaturhersteller nicht zu erklären scheinen, aber mit AutoHotkey einfach genug. Ich habe dies verwendet, um diese Tastenanschläge als Makros zu meiner Maus hinzuzufügen, was das Hinzufügen von beliebigen Tasten ansonsten nicht unterstützt.

z::
send, {F13}
return

x::
send, {F14}
return

c::
send, {F15}
return

v::
send, {F16}
return

b::
send, {F17}
return

n::
send, {F18}
return

m::
send, {F19}
return

l::
send, {F20}
return

k::
send, {F21}
return

j::
send, {F22}
return

h::
send, {F23}
return

g::
send, {F24}
return
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.