mikrocontroller.net

Forum: PC-Programmierung primäre USB-Maus XP/VBA ; Createfile = -1


Autor: Johannes H. (johannes-kuriboh)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
seit etwa 8 Tagen komme ich nicht weiter. Ich habe hier einige 
interessante Artikel gefunden, leider helfen die mir nicht über mein 
Problem hinweg.
Ich bekomme keinen Handle für meine Maus.
Dem Buch ISBN 3-8266-0698-1 liegt ein Tool bei, welches meine Maus 
erfolgreich anspricht, und Attribute ausliest. (Gehen muss es also)
Ich sitze an einem XP Rechner (SP2), und habe als einziges HID meine 
Maus angeschlossen.

Die angehängte Datei ist eine ExCel Datei.
Die Module API_Test, Errorreport, USB_Suche sind Fehlerfrei.
USB20_CD ist vermutlich Fehlerfrei und enthält alle API Deklarationen, 
die im Modul USB_Gethandle verwendet werden.

Der Fehler steckt in der Zeile:
CurrentDeviceHandle = CreateFile(CurrentDevicePathName, GENERIC_READ, FILE_SHARE_READ, 0, OPEN_EXISTING, 0, 0)
oder knapp davor.

Den Gerätepfad erhalte ich erfolgreich, nach der Weiterverarbeitung 
sieht er so aus:
"\\?\hid#vid_046d&pid_c00e#6&30366122&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}  " ""
Ich bin mir nicht sicher ob meine Weiterverarbeitung stimmt:
DetailDeviceResult = SetupDiGetDeviceInterfaceDetail(GlobalDeviceInfoSet, CurrentDeviceInterfaceData, VarPtr(DetailBuffer(0)), DetailBufferSize, DetailBufferSize_Probe, 0)
CurrentDevicePathName = CStr(DetailBuffer())
CurrentDevicePathName = StrConv(CurrentDevicePathName, vbUnicode)
CurrentDevicePathName = Right$(CurrentDevicePathName, Len(CurrentDevicePathName) - 4)

Ich komme nicht weiter.
Ich brauche den Handle zu meiner Maus.
Ich freue mich auf eure Hilfe.

Grüße, Johannes

Autor: Johannes H. (johannes-kuriboh)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ich bin mir nicht sicher ob das mit dem Upload funktioniert hat, darum 
nachgereicht als .Zip

Autor: Johannes H. (johannes-kuriboh)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe folgende Tabelle gefunden:
http://msdn2.microsoft.com/en-us/library/ms789918.aspx
Device Type       U.Page  U.ID  Windows Client  Access Mode
Pointer           0x01    0x01  Win32 subsystem Exclusive
Mouse             0x01    0x02  Win32 subsystem Exclusive
Joystick          0x01    0x04  DirectInput     Shared
Game pad          0x01    0x05  DirectInput     Shared
Keyboard          0x01    0x06  Win32 subsystem Exclusive
Keypad            0x01    0x07  Win32 subsystem Exclusive
System Control    0x01    0x80  Win32 subsystem Shared
Cons. Aud. Contr. 0x0C    0x01  *               Shared

U.Page = Usage Page
U. ID = Usage ID
Cons. Aud. Contr. = Consumer Audio Control
* hidserv.exe in Windows 2000 and hidserv.dll (one of the SVC host services) in Microsoft Windows XP

Wie es aussieht hat Win32-subsystem exclusive Zugriffsrechte auf meine 
Maus.
Wie kann ich trotzdem auf meine Maus zugreifen?
Können mir die User Page und User ID Informationen weiterhelfen?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.