USB Tastatur-ähnliche Eingabe lesen

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 10 Antworten in diesem Thema. Der letzte Beitrag () ist von Takafusa.

    USB Tastatur-ähnliche Eingabe lesen

    Hallo,

    ich habe einen Scanner per USB angeschlossen, im Moment wird er vom Computer scheinbar wie eine Tastatur behandelt, heißt im z.b. Notepad wird das Scanergebnis direkt dargestellt.
    Jetzt schätze ich mal kann ich den Code genauso in ein Textfeld füllen und damit dann in einem Programm arbeiten, aber ich wollte trotzdem nachfragen ob man die Daten abgreifen kann und demfolgend die Tastatur ähnliche-Eingabe unterdrücken.
    Denn scheinbar schießt der die Zahlen überall rein, wos gerade selektiert ist, da weiß ich nicht ob mir das irgendwie zum Verhängnis wird.

    Viele Grüße
    Wenn du bei dem Scanner zwischen Keyboard-Input-Modus und SerialPort-Modus umschalten kannst, kannst du ihn via SerialPort nutzen. Schau mal nach so einem Schalter und auch in die Bedienungsanleitung, um zu erfahren, welche Baudrate, ob ein Parity Bit nutzt wird, StopBits etc...
    Natürlich kann Dir das "zum Verhängnis" werden. Wenn der Fokus nicht in dem Control ist, welches Du für den Scanner vorgesehen hast, z.B. die Adressleiste in Deinem Internetbrowser.
    Irgendwo hier im Forum hatte jemand geschrieben, er hätte sich ein Programm gemacht, welches programmabhängig die Scannerdaten verarbeitet. Mal sehen, ob da was zu finden ist.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    Zum SerialPort kann ich leider nicht übergehen, denn der Anschluss ist am Endgerät für die Anwendung nicht mehr vorhanden.

    Wie kann man den Focus denn umplatzieren bei einem eintrudelnden ScanEvent? Das darf gerne auch umspringen auf das nötige Fenster beim Scannen, ich weiß nicht ob sowas geht.
    Dann bräuchte es keine Sonderbehandlung falls der Focus mal falsch liegt.

    Haudruferzappeltnoch schrieb:

    der Anschluss ist am Endgerät für die Anwendung nicht mehr vorhanden.
    Eh, what? Was willst Du uns damit sagen? Ach, Moment mal. Programmierst Du in diesem Fall überhaupt? Hast Du hier ein eigenes Projekt laufen? Oder geht es darum, den USB-Scanner für eine fremde Anwendung zu modifizieren?
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    Nee, da haste was falsch aufgefasst. Der USBscanner kann quasi softwaremäßig über den Treiber so eingestellt werden, dass er sich anders verhält. Du musst da kein anderes Kabel anschließen.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    Ohman, das Verhalten war bisher so verständlich. Dann schau ich mal wie das funktionieren könnte. Also mit nen paar Tricks in Vb geht es nicht?

    Und nur das ich euren Vorschlag verstehe: Der Scanner ist womöglich so einstellbar, dass trotz Anschluss per USB-Kabel ich ein Projekt schreiben kann, das eine serielle Schnittstelle abfrägt um die Information abzugreifen?
    Also wie Vaporized sagte, wenn dein Scanner einen SerialPort modus hat, läuft das auch über den USB-Anschluss. Kannste dir so vorstellen, das in deinem Scanner ein USB zu TTL Converter eingebaut ist. Sowas hier :
    amazon.de/AZDelivery-Adapter-F…rial-gratis/dp/B01N9RZK6I
    Dann ist dein Scanner als COM-Port verfügbar, genau so wie auch ein Arduino den du z.B. via USB angeschlossen hast. Wie du dann Softwareseitig den SerialPort einstellen musst, kannst du in der Bedienungsanleitung herausfinden, wenn dieser Modus denn unterstützt ist.
    Wenn der Scanner seine Daten nur an Deine App schicken soll, kommst Du um den SerialPortModus wohl nicht herum. Denn im normalen Tastaturmodus bekommt Dein Programm nur was mit, wenn Dein Programm auch den Tastaturfokus hat. Man kann sich bestimmt auch was ins Programm herholen, was alles empfängt, aber da bin ich wissensbedingt raus.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    Ich täte den SP Modus bervorzugen, man könnte einen LowLevelKeyboardHook nutzen, so kannst du die Tasteneingaben "verschlucken", aber wann soll verschluckt werden? Weiss jetzt nicht ob man auch nur eine bestimmte Tastatur hooken kann, das hab ich noch nie probiert. Wenn es möglich ist zwischen verschiedenen Tastaturen zu unterscheiden, wäre es einfach mit so einem Hook. Aber mit nem SP noch einfacher.