Hallo zusammen, ich habe an zwei Rechnern (Windows XP, Windows 11) je 2 Tastaturen. Der Anwendungsfall ist bei beiden unterschiedlich, aber das Problem das Gleiche. Eine Tastatur ist "normal" und soll wie gewohnt nutzbar bleiben. Die andere ist eine "Multimedia"-Tastatur und soll exklusiv in ein Anwendungsprogramm/Fenster eingeben, selbst wenn dieses nicht aktiv ist. (In Wirklichkeit ist eine der "Multimedia"-Tastaturen ein STM32 mit HID-Implementierung und die andere ein Barcodescanner, aber das hat für die Fragestellung wahrscheinlich keine Relevanz.) Geht das?
Walter T. schrieb: > Geht das? Nö, es gibt aus Sicht von Windows nur eine Tastatur, und das Programm, das den Eingabefocus hat, bekommt alles ab, was die Tastatur sendet. Eine Ausnahme stellen sog. "Hotkeys" dar, die kann ein Programm für sich reservieren, dann bekommt es, auch wenn es nicht den Eingabefocus hat, diese Tastencodes verabreicht. Wenn mehrere Tastaturen angeschlossen sind, landen alle von ihnen erzeugte Tastaturereignisse im gleichen Auswertungspuffer von Windows, d.h. es ist auf die übliche Weise nicht möglich, zu unterscheiden, auf welcher Tastatur nun das "A" gedrückt wurde. Vorausgesetzt, daß Du die Software selbst schreibst, bestünde natürlich die Möglichkeit, via libusb zu versuchen, direkt mit einem USB-Gerät zu kommunizieren, um somit eine der Tastaturen aus der windows-eigenen Verarbeitung herauszunehmen, dann aber wäre es einfacher, wenn das Gerät gar nicht erst normale Tastencodes sendet, sondern irgendwelche anderen HID-Ereignisse produziert. Bei Deiner STM32-Selbstbau-"Tastatur" könnte das also gehen.
Harald K. schrieb: > dann aber wäre es einfacher, wenn das Gerät > gar nicht erst normale Tastencodes sendet, sondern irgendwelche anderen > HID-Ereignisse produziert. Genau. Deswegen hätte ich das auch so gemacht, wenn ich das selbst gemacht hätte. Dummerweise ist das aber nicht der Fall. Im Barcode-Scanner Fall ist es eine Access-Datenbank, bei der STM32-Multimedia-Tastatur würde ich einfach nur gerne meine Hintergrundmusik pausieren können, selbst wenn das VLC-Fenster irgendwo hinter anderen Sachen verschwunden ist. Edit: Für den zweiten Anwendungsfall habe ich gerade eine (dumme aber funktionierende) Ersatzlösung gefunden. Ich Spiele die Musik vom Handy ab und nutze den PC nur als Bluetooth-Lautsprecher. Häßlich, aber besser als vorher.
:
Bearbeitet durch User
Walter T. schrieb: > bei der STM32-Multimedia-Tastatur würde ich einfach nur gerne meine > Hintergrundmusik pausieren können, selbst wenn das VLC-Fenster irgendwo > hinter anderen Sachen verschwunden ist. Das geht recht einfach über Autohotkey. Dort kann man Keys als Hotkeys festlegen und Aktionen hinterlegen. Nutze ich um eine DAW-Software über Tastatur zu steuern, selbst wenn sie kein Focus hat.
:
Bearbeitet durch User
ich habe roccat suora tastatur, diese hat einen game modus (per taste) und es wird erkannt welches spiel (oder anwendung) gespielt wird. ich kann ca 4 spiel-profile anlegen, innerhalb der profile kann ich den tasten andere tasten zuordnen, zb shift-taste gibt E aus. ich habe ein profil für explorer chrome und andere profile für spiele. ich kann also zwischen den programmen wechseln und die tastatur wechselt dann das profil, das letzte genutzte profil bleibt auch in der tastatur gespeichert und kann an anderem rechner genutzt werden. ist der game modus aus, ist alles normal. es gibt auch makrofunktionen für zb internet multimedia, aber außer lautstärke playstop nur vorheriges/nächstes. ich habe die makrotasten nicht verstanden, man kann aber keine tastenabfolgen einprogrammieren. (ich habe versucht ein numpad als spieletastatur zu verwenden, aber die spieleentwickler haben immer irgendwelche tasten festverdrahtet (zb E).) aber ohne programmfokus kann ich keine funktionen in inaktiven programmen bedienen. es gibt aber laut leise ton aus taste. die windows taste ruft windows auf. autohotkey hatte ich für mich in betracht, aber nie gemacht
Klaus H. schrieb: > Das geht recht einfach über Autohotkey. Dort kann man Keys als Hotkeys > festlegen und Aktionen hinterlegen. Danke für den Input. Mit dem "Tastatur-Manager" der PowerToys funktioniert das nicht. Ich werde mich also in den nächsten Tagen also mal in die Autohotkey-Doku einlesen.
Walter T. schrieb: > Häßlich, aber besser > als vorher. Ich habe meine Gaming-Tastatur (G15) Huckepack auf die NB-Tastatur gesetzt. Da die Abstandhalter abgebrochen sind (nicht sehr robust) nehme ich jetzt Papierröllchen.
Es gab/gibt kommerzielle Loesungen, die mit einem Rechner mehrere Arbeitsplaetze bedienen. Ob das heute noch am Markt ist, weiss ich nicht. Die muessen das Problem der Zuordnung von Eingabe- und Ausgabegeraeten ja auch irgendwie :) geloest haben.
Motopick schrieb: > Es gab/gibt kommerzielle Loesungen, die mit einem Rechner mehrere > Arbeitsplaetze bedienen. Nennt sich Terminalserver, aber da hängt jeder Monitor, jede Maus und jede Tastatur an einem eigenen "Thin-Client" (effektiv ein Graphikterminal) und die wiederum sind übers Netzwerk mit dem Server verbunden. Als Protokolle werden hier meist RDP, irgendwas von Citrix oder durchaus auch VNC eingesetzt. Es gab auch mal eine Frickellösung, die das tatsächlich mit einem PC mit einer Mehrmonitor-Graphikkarte umgesetzt hat - sofern man die Eingabegeräte nicht über den vom Betriebssystem vorgesehenen Devicetreiber ansteuert, sondern das mit seiner Software selbst macht, kann man natürlich beliebige Dinge damit treiben.
:
Bearbeitet durch User
Harald K. schrieb: > Motopick schrieb: >> Es gab/gibt kommerzielle Loesungen, die mit einem Rechner mehrere >> Arbeitsplaetze bedienen. > > Nennt sich Terminalserver, aber da hängt jeder Monitor, jede Maus und > jede Tastatur an einem eigenen "Thin-Client" (effektiv ein > Graphikterminal) und die wiederum sind übers Netzwerk mit dem Server > verbunden. Wie ueblich hast du es wieder nicht begriffen. Es gab diese "Multi-Arbeitsplatzloesungen" fuer einen PC. U.U. mit mehreren Videokarten und/oder moeglicher spezieller Hardware. Ich habe sowas nie benutzt und auch nie irgendwo gesehen. Ab es gab sie, und sie wurden auch beworben. Nochmal fuer dich: PC (kein/ohne Terminalserver).
Walter T. schrieb: > Mit dem "Tastatur-Manager" der PowerToys funktioniert das nicht. Ich > werde mich also in den nächsten Tagen also mal in die Autohotkey-Doku > einlesen. Um Keys an bestimmte Fenster senden zu können musst du ``ControlSend()`` oder ``ControlSendRaw()`` statt ``Send...()`` nutzen.
Motopick schrieb: > Wie ueblich hast du es wieder nicht begriffen. > Es gab diese "Multi-Arbeitsplatzloesungen" fuer einen PC. Lern' doch einfach lesen, und brich nicht nach den ersten drei Sätzen ab.
Ergänzung: Wenn`s dir nur um VLC Pause/PLay geht, das geht noch einfacher: Man kann in VLC die Multimedia Taste Abspielen/Pause der globalen Multimedia Taste zuordnen. Anleitung z.B. https://blog.adminweb.at/vlc-playermultimedia-tasten-im-hintergrund-nutzen-globale-hotkeys/ Dann ist es egal ob VLC den Focus hat oder nicht. Das klappt auch mit anderen Playern wie z.B. Foobar - der übrigends deutlich weniger Speicher zum Abspielen von Audio braucht als VLC.
Du kannst bei vielen BarCode-Scanner die als HID Device arbeiten auch eine Tastenkombination mit programmieren, welche sie an den PC schicken, bevor Sie den eigentlichen BarCode senden, anschließend können Sie dann auch noch was senden, z.B. den Enter Tastendruck. Im Programm kann man dann das Fenster zur Barcodeingabe, z.B. mit Strg+F12 aufrufen, und per Hand den Barcode eingeben und mit Enter abschließen, oder der Scanner macht das alles in einem Rutsch.
Klaus H. schrieb: > Ergänzung: Wenn`s dir nur um VLC Pause/PLay geht, das geht noch > einfacher: DANKE! Das ist eine Wohltat! Zum zweiten Anwendungsfall (Barcode-Scanner an Access auf Windows XP) denke ich habe ich auch schon einen Workaround gefunden. Da werde ich das Piepsen des Barcode-Scanners abschalten und stattdessen als Sound in Access erzeugen. Wenn dann gescannt wird, ohne daß das Fenster aktiv, gibt es auch kein "piep" und und man merkt es wenigstens, bevor ein Dutzend Scans ins Nichts verschwinden. (Bei VLC hätte die Autohotkeys/Powertoys-Lösung wohl darin bestanden, die "Multimedia-Tastatur" Tastenkombinationen anstelle der Multimedia-Key-Scancodes bestanden. Die hätten umgeleitet werden können.)
:
Bearbeitet durch User
Carypt C. schrieb: > innerhalb der profile kann ich den tasten andere tasten zuordnen, zb > shift-taste gibt E aus. Ist das der Grund für Deine Unfähigkeit, Gross- und Kleinschreibung zu benutzen? Carypt C. schrieb: > aber ohne programmfokus kann ich keine funktionen in inaktiven > programmen bedienen. Und damit ist das hier völlig nutzlos.
Walter T. schrieb: > um zweiten Anwendungsfall (Barcode-Scanner an Access auf Windows XP) > denke ich habe ich auch schon einen Workaround gefunden. Wenn man den Scanner dazu bringen kann, vor jedem Scan einen eindeutigen Code abzusetzen, ließe sich über diesen mit so etwas wie AutoIt die Access-Anwendung in den Vordergrund holen. Der eindeutige Code muss natürlich einer sein, den man sonst nicht braucht, und den auch keine andere Anwendung für sich auswertet. Anbieten würde sich für so etwas die Blinddarm-Taste "Rollen", die auf Millionen von PC-Tastaturen völlig sinnlos ihr Dasein fristet. Setzt natürlich voraus, daß der Scanner entsprechend konfigurierbar ist; bei denen, die mir begegneten, lief die Konfiguration durch spezielle zu scannende Barcodes.
Andererseits gibt es auch Geräte die ein und dieselbe Tastatur, Maus und Monitor durch Umschalten auf andere Rechner umleiten können. KVM-splitter, wie hier: https://www.ebay.de/itm/126402322182 @hmmmm, ich hatte keine Zeit mehr alles in Unschön-und-Umständlich-schrift abzugeben.
:
Bearbeitet durch User
Walter T. schrieb: > Im Barcode-Scanner Fall ist es eine Access-Datenbank Sehr viele Barcode-Scanner kann man auch so konfigurieren, dass sie statt als Tastatur als COM-Port erscheinen. Dann brauchst du bloß noch ein wenig VBA-Code, damit das Access die Daten empfangen kann und in die richtigen Felder verfrachtet. > bei der > STM32-Multimedia-Tastatur würde ich einfach nur gerne meine > Hintergrundmusik pausieren können, selbst wenn das VLC-Fenster irgendwo > hinter anderen Sachen verschwunden ist. Für einigen Multimedia-Kram gibt es spezielle Tasten-Codes. Du brauchst VLC bloß so konfigurieren, dass es diese Codes verwendet. Das hier dürften wohl die relevanten sein: MediaNextTrack 176 MediaPlayPause 179 MediaPreviousTrack 177 MediaStop 178 VolumeDown 174 VolumeMute 173 VolumeUp 175 Wobei du dich um den Volume-Kram eigentlich nicht kümmern brauchst, das passiert sowieso. Allerdings nur für das aktuelle Windows-Ausgabegerät. Könnte also eventuell doch relevant sein, wenn du nämlich den VLC auf ein abweichendes Audio-Ausgaberät konfiguriert hast.
Harald K. schrieb: > Nö, es gibt aus Sicht von Windows nur eine Tastatur, und das Programm, > das den Eingabefocus hat, bekommt alles ab, was die Tastatur sendet. Grundsätzlich ist das so, ja. > Eine Ausnahme stellen sog. "Hotkeys" dar Es gibt sehr viel mehr Ausnahmen. Mit Administrator- oder System-Rechten kann man sich an beliebiger Stelle in die Key-Event-Chain einklinken. Früher(tm) konnte das sogar jede beliebige Anwendung mit einfachen User-Rechten tun. Zum Glück heute nicht mehr. Zumindest nicht mehr einfach so... Es geht aber immer noch. Einige, von offensichtlich sehr kompetenten Programmierern entwickelte Malware beweist das leider ziemlich überzeugend...
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.