Nach der Installation des Treibers kann ich manuel den Key zum öffnen
verwenden:
AVROPENGUID {0x23F89E5D, 0x616F, 0x4DA0, {0xAA, 0x2B, 0xD0, 0x81, 0x23,
0xAF, 0xDF, 0x2C}}
und erhalte unten den Path für den Treiber das Gerät kann dann verwendet
werden.
Es ist so, das sich die DeviceGUID verändern kann in der *.inf Datei was
immer bleibt ist die Product und Vendor ID.
Also möchte ich über PID und VID den Treiber-Path finden, dazu verwende
ich eine konforme getestete Deviceiteration von MicroSoft TechExample
Hier erhalte ich über PID und VID einen Path auf das Gerät, auch die
Anschlussnummern stimmen.
Was aber nicht stimmt ist die GeräteGUID am Ende des Pathe's diese
unterscheidet sich zu der aus der *.inf Datei was zur Folge hat,
das dieses Gerät mit CreateFile nicht geöffnet wird.
Der über die GeräteGUID erzeugte Path :
"\\\\?\\usb#vid_16c0&pid_05df#5&1257636a&0&3#{23f89e5d-616f-4da0-aa2b-d0
8123afdf2c}"
Der über die Iteration erzugte Path:
"\\\\?\\usb#vid_16c0&pid_05df#5&1257636a&0&3#{88bae032-5a81-49f0-bc3d-a4
ff138216d6}"
Warum ist die über die Iteration erzeugte GeräteGUID mit einem Key
versehen den ich nicht kenne, und das System auch nicht ?
Vielen Dank für Hinweise ich lege mir bereits die Karten...
Karsten aus Berlin
Karsten S. schrieb:> Warum ist die über die Iteration erzeugte GeräteGUID mit einem Key> versehen den ich nicht kenne, und das System auch nicht ?
Deine Suche basiert auf unterschiedlichen Teilmengen der USB-Geräte:
Hallo ,
danke für deine Antwort, auch das verändern/ersetzen der
Iterationsmethode
Mit einer Guid z.b. der vom Windows "Universal Serial Bus Device"
GUID devclass = GUID_DEVCLASS_MULTIPORTSERIAL;// GUID_DEVCLASS_USB;
hDevInfo = SetupDiGetClassDevs(&devclass, 0L, NULL, DIGCF_PRESENT |
DIGCF_ALLCLASSES | DIGCF_PROFILE | DIGCF_DEVICEINTERFACE);
Liefert am ende des Pathes immer die ClassGUID des in der *inf
befindlichen
DeviceClass eintrages, ich benötige jedoch die DeviceGUID aus der
*.inf Mit der kann ich das Gerät öffnen, weil der Path am ende diese
GUID
enthält und nicht die von der ClassGuid.
Ich wünschte ich könnte diese Guid irgendwie erlangen, bisher sind alle
Versuche fehlgeschlagen diese GUID Konform durch die Iteration zu
bekommen.
Diese DeviceGUID Wird insbesondere von libusb über den ZDiag in die Inf
eingetragen. Ich habe *inf Dateien gesehen die diesen Eintrag garnicht
haben.
Ich würde lieber ohne libusb auskommen zum größten Teil ist das ja schon
gelungen da ich WinUsb.dll dynamisch lade und CreateFile erfolgrteich
ist, auch die Kommunikation mit dem Atiny85 ist tadellos.
Hast Du einen Rat wie meine *.inf aussehen muss um ein:
"Universal Serial Bus devices"
zu öffnen.
Mein Versuch mit einer eigene Inf ergibt kein Ergebnis: