?
daimonion schrieb:
Bin mal gespannt was mir das bringt.
Zumindest bringt es Dir die Möglichkeit, vernünftig auf Dein Gerät zuzugreifen.
daimonion schrieb:
Idealerweise wollte ich das dann machen, wenn ich die Vendor- und ProductID des Gerätes habe, denn dann kann ich die initialisierten und nicht initialisierten Geräte noch ohne großen Aufwand unterscheiden. Wenn du nun sagst, dass es nur mit den entsprechenden HID Befehlen geht, muß ich mir nochmal Gedanken machen, ob ich da Extra den Device Deskriptor als Übertragungsmedium nehme, oder nicht einfach nur eine Funktion in den µC programmiere, mit der ich dann die Seriennummer auslesen kann.
Eine besseres Unterscheidungs-Merkmal als die Seriennummer gibt es doch gar nicht. Jedenfalls mache ich das immer so. Allerdings bin ich mir nicht sicher, was ein "extra" Device Descriptor sein soll. Der Host liest Deinen Device Descriptor und fertig. Ich weiß nicht wo da noch ein "extra" Device Descriptor Platz finden soll. Auch weiß ich eben nicht, wozu Du eigens eine Funktion für die Seriennummer im uC benötigst. Du brauchst doch lediglich den entsprechenden Descriptor während des Standard GET_DESCRIPTOR Requests zurückzugeben. Auf Seiten des Hosts rufst Du HidD_GetSerialNumberString auf und fertig ist's.
BTW: Willst Du VID und PID des Gerätes lesen, kannst Du das ganz einfach per HidD_GetAttributes erledigen. Du brauchst dich also nicht länger durch die Registry zu quälen.