Español
Foro

USB auslesen ...

 
- Página 1 -



Erasmus.Herold
¡Hola liebe Comunidad.

Möchte lo con diesem Thema todavía una vez bastante anders versuchen, a Ayuda a kommen. El COM Schnittstelle al PC auszulesen es con XProfan simpel.

Como sieht lo de con el USB Schnittstelle?
Sombrero alguien se daran intenta y ha Codeschnipsel para mich?

Bitte no Diskussion en Treiber, Windowshoheiten oder USB2COM Adapter, pero a diesem Hilo Por favor, sólo el Austausch, si alguien con XProfan USB direkt auslesen kann.

Gracias euch.
 
04.05.2019  
 



« Dieser Contribución wurde como Solución gekennzeichnet. »

- Página 3 -



Paul
Glatz
El "1995378067" en hScanner& es una Handle el Gerät y se se zwischen Programa- oder Computerneustarts ändern.
Der Gerätename (\\?\HID#VID_????&PID_????...) debería konstant bleiben.

Mir es no Möglichkeit bekannt valor anzuzeigen. Aber el VID/PID sieht uno auch en el Geräte-Manager bajo "Hardware-IDs".
 
06.05.2019  
 



 
- Página 2 -



Paul
Glatz
Hatte He olvidado. Pida a los Descargar ahora hinzugefügt.
 
06.05.2019  
 




Erasmus.Herold
Sieht entonces así de ...

 
06.05.2019  
 



 
- Página 3 -



Erasmus.Herold
Referencia:

Derzeit es así, egal, si Yo oben kein (!) USB Device auswähle, si Yo el Tastatur wähle, oder el USB Scanner ....

... si yo encima Tastatur una Eingabe mache, erscheint el ASCII Code sin dass el Cursor blinken muss.

El Erfassung es also bien (porque blind), pero se todavía no en una festes USB Device fixiert.

Saludo y Dank
 
06.05.2019  
 




Paul
Glatz
El RawInput Meldungen Yo antes el Filtern ausgegeben.

Hier otra vez una neue Versión, el en media Tests zuverlässiger en el Scanner reagiert.

Descargar

Hier todavía una Video, como trabajo se: Descargar

El neue Versión zeigt RawInput Meldungen sólo todavía para el gewählte Gerät.

4 kB
Hochgeladen:06.05.2019
Ladeanzahl144
Descargar
7.482 kB
Hochgeladen:06.05.2019
Ladeanzahl135
Descargar
 
06.05.2019  
 




Erasmus.Herold
Mit Video? Ganz großes Kino!!!

Mein Ergebnis:
Yo wähle nun media USB Scanner.
Mache una Eingabe.
Nach el "Enter" des Scanners kommen el Daten.
Zuletzt el gesamte String.

Das sieht ya veces muy bien de.
Als nächstes teste Yo el veces con un USB (HID) RFID-Reader.

Nächste Rückmeldung folgt.
 
06.05.2019  
 




Erasmus.Herold
... y otra vez una Schritt más.

Mein Video con ausgelesenen RFID Tags findest du hier: [...] 
 
06.05.2019  
 




Erasmus.Herold
Yo bastle a deinem Code rum y minimiere me de tiempo, Yo brauche.
Das Ergebnis hay entonces später zurück.

hScanner& nimmt en me para el angeschlossenen USB Scanner el
Valor 1995378067 a. Darüber kann Yo el Gerät fix auslesen.

Kann Yo diesem Valor auch unabhängig de XProfan para el Zuweisung
bajo Windows encontrar oder erkennen?

Ziel wäre una feste Vorgabe des USB Ports y no el Auswahl aller
 
06.05.2019  
 




Paul
Glatz
El "1995378067" en hScanner& es una Handle el Gerät y se se zwischen Programa- oder Computerneustarts ändern.
Der Gerätename (\\?\HID#VID_????&PID_????...) debería konstant bleiben.

Mir es no Möglichkeit bekannt valor anzuzeigen. Aber el VID/PID sieht uno auch en el Geräte-Manager bajo "Hardware-IDs".
 
06.05.2019  
 




H.Brill
wow, sieht sí ya veces bien de.
Tal vez veces en el Registry Ausschau halten : [...] 
 
Benutze XPROFAN X3 + FREEPROFAN
Wir sind die XProfaner.
Sie werden von uns assimiliert.
Widerstand ist zwecklos!
Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.

Was die Borg können, können wir schon lange.
06.05.2019  
 




Erasmus.Herold
Prima.

1. Dann voluntad Yo, el Scanner morgen veces encima seinen fest definierten Gerätenamen packen ...

2. ... y el EANs en uno Listbox recoger.

Mi Rückmeldung se folgen.

Gracias Euch.
 
06.05.2019  
 




Erasmus.Herold
Anbei nun veces mein angepasster Test-Quellcode con fest vorgegebenem USB Anschluss. Das Auslesen via Barcode-Scanner y RFID Reader (siehe Video más oben) funktioniert super.

In el nächsten Stufe folgt nun el Implementierung en el "RFID Management Studio". Weitere Rückmeldung se folgen. Gracias !!!
Título de la ventana "RawInput"
Ventana 1000, 600
SubClass %HWnd, 1
'=======================================================================================================================================================
'=== VARIABLEN DEKLARIEREN =============================================================================================================================
'=======================================================================================================================================================
Struct RAWINPUTDEVICE = usUsagePage%, usUsage%, dwFlags&, hwndTarget&
Struct RAWINPUTKEYBOARD = dwType&, dwSize&, hDevice&, wParam&, MakeCode%, Flags%, Reserved%, VKey%, Message&, ExtraInformation&
Def RegisterRawInputDevices(3) !"User32", "RegisterRawInputDevices"
Def GetRawInputData(5) !"User32", "GetRawInputData"
Def GetRawInputDeviceList(3) !"User32", "GetRawInputDeviceList"
Def GetRawInputDeviceInfoA(4) !"User32", "GetRawInputDeviceInfoA"
Declarar hScanner&, CodeStatus%, CodeFocus&, hDev&
Declarar HID_Geraet_Nr&, HID_Geraet_temporaere_ID&, counter&
// RawInput registrieren
Declarar rid#
Dim rid#, RAWINPUTDEVICE
rid#.usUsagePage% = 1// RegisterRawInputDevices
rid#.usUsage% = 6// Keyboard
rid#.dwFlags& = 0// $30 /* RIDEV_NOLEGACY */
rid#.hwndTarget& = %hwnd

Caso negativo RegisterRawInputDevices(rid#, 1, SizeOf(rid#))

    MessageBox("RawInput podría no registriert voluntad " + Hex$(%WinError), "", 0)

EndIf

HID_Geraet_Nr& = 1
'=======================================================================================================================================================
'=== PROCEDUREN ANLEGEN ================================================================================================================================
'=======================================================================================================================================================

Proc AddDevices_USB

    Parámetros hList&
    Declarar numDevices&, devices#, hDevice&
    GetRawInputDeviceList(0, Addr(numDevices&), 8)

    If numDevices& = 0

        Volver

    EndIf

    Dim devices#, numDevices& * 8
    GetRawInputDeviceList(devices#, Addr(numDevices&), 8)
    counter& = 1

    WhileLoop 0,numDevices& - 1

        If Largo(devices#, (&Loop * 8) + 4) = 1/* RIM_TYPEKEYBOARD */

            hDevice& = Largo(devices#, &Loop * 8)
            AddStrings(hList&, GetDeviceName_USB(hDevice&) + "|" + Str$(hDevice&))
            // ALLE USB-PORTS ANZEIGEN
            imprimir "benutzte USB-Ports: ", GetDeviceName_USB(hDevice&) + "|" + Str$(hDevice&)

            if (counter& = HID_Geraet_Nr&)

                HID_Geraet_temporaere_ID& = hDevice&

            endif

            counter& = counter& + 1

        EndIf

        // ALLE USB-PORTS ANZEIGEN
        'imprimir "alle USB-Ports: ", GetDeviceName_USB(hDevice&)

    EndWhile

    // GEWÄLTE TEMPORÄRE HID ID ANZEIGEN
    imprimir : imprimir "benutzt se esta temporäre HID ID [" + str$(HID_Geraet_Nr&) + "]: " + str$(HID_Geraet_temporaere_ID&)

ENDPROC

Proc GetDeviceName_USB

    Parámetros hdev&
    Declarar buf#, len&
    GetRawInputDeviceInfoA(hdev&, $20000007  0, Addr(len&))/* RIDI_DEVICENAME */

    If len& = 0

        Volver ""

    EndIf

    Dim buf#, len&
    GetRawInputDeviceInfoA(hdev&, $20000007  buf#, Addr(len&))/* RIDI_DEVICENAME */
    'imprimir "hdev: ", hdev&
    'imprimir "Add: ", GetDeviceName_USB(hDevice&)
    Volver String$(buf#, 0)

ENDPROC

SubClassProc

    // El Procedimiento, a el beim Subclassing todos Messages umgeleitet voluntad,
    // para deren Ventana o, Dialogelement el Subclassing eingeschaltet es.

    If SubClassMessage(%hWnd, $00ff/* WM_INPUT */

        Declarar raw#
        Dim raw#, RAWINPUTKEYBOARD
        Var size& = SizeOf(raw#)

        Caso negativo GetRawInputData(&sLParam, $10000003  raw#, addr(size&), 16) == -1/* RID_INPUT */

            If (raw#.hDevice& = HID_Geraet_temporaere_ID&) AND ((raw#.flags% & 1  = 0)/* RI_KEY_BREAK */

                'SetText hLog&, GetText$(hLog&) + "RawInput: Gerät: " + Str$(raw#.hDevice&) + " Taste: " + Str$(raw#.VKey%) + " Flags: " + Str$(raw#.flags%) + "\n"

                Caso negativo GetFocus(hCode&)

                    CodeFocus& = %GetFocus
                    SetFocus(hCode&)
                    SetText hCode&, ""

                EndIf

                If (raw#.VKey% = 13) O (raw#.VKey% = 9)// scancode 13 = Enter  9 = Tab

                    SetMenuItem 1234

                EndIf

            EndIf

        EndIf

    EndIf

ENDPROC

'=======================================================================================================================================================
'=== HAUPTPROGRAMM =====================================================================================================================================
'=======================================================================================================================================================
'hDev& = Crear("ChoiceBox", %hwnd, 1, 5, 25, Width(%hwnd) - 10, 300)
// USB DEVICES ERMITTELN
AddDevices_USB hDev&
Var hCode& = Crear("Edit", %hwnd, "", 2000, 2000, 0, 0)// Verstecktes Textfeld para Barcodeeingabe
Var hLog& = Crear("MultiEdit", %hwnd, "", 5, 120, Width(%hwnd) - 10, Height(%hwnd) - 125)
// Hauptschleife

Mientras que 1

    WaitInput

    If Clicked(hDev&)

        hScanner& = Val(Substr$(GetText $(hDev&), 2, "|"))

    ElseIf %MenuItem = 1234

        SetFocus(CodeFocus&)
        CodeFocus& = 0
        SetText hLog&, GetText $(hLog&) + "Barcode gelesen: " + GetText $(hCode&) + "\n"

    EndIf

EndWhile

 
08.05.2019  
 




Erasmus.Herold
Actualización:

In Anlehnung a Pauls Ideen es nun una USB_Port_Viewer entstanden.

Dieses Programa erkennt todos vorhandenen USB Ports en un Sistema, zeigt el benutzten Ports a y liefert el benötigte temporäre ID para Auslesen en el Hintergrund.

Anbei el Programa samt Quellcode.


707 kB
Hochgeladen:08.05.2019
Ladeanzahl159
Descargar
 
08.05.2019  
 




Respuesta


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

19.758 Views

Untitledvor 0 min.
Member 862464120.05.2024
Sven Bader03.07.2023
H.Brill14.05.2023
Normann Strübli30.01.2023
Más...

Themeninformationen



Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie