Question

En bref: Je dois détecter les événements hotplug de mon appareil CDC USB par PID / VID et obtenir le port COM virtuel correspondant qui a été créé par Windows dans Visual C ++ et à la fin créer une dll .

J'ai un appareil CDC USB que je dois être informé des cas de connexion / déconnexion sous Windows. Mon approche consiste à utiliser RegisterDeviceNotification et une fenêtre « invisible » pour recevoir les notifications de WM_DEVICECHANGE. Cette partie travaille à ce jour.

pour autant que j'ai découvert que je dois obtenir la liste des périphériques USB qui est branché, itérer dessus et filtre les appareils avec mon PID / VID? Je suppose que je suis alors en mesure d'obtenir plus d'informations sur le dispositif comprenant le port COM?

Le seul moyen d'atteindre mon objectif d'utiliser les appels SetupDi à setupapi.h? Est-ce en utilisant WDK / DDK la seule façon d'atteindre mon objectif?

Dès que je travaille est open source sur http://github.com/vinzenzweber/USBEventHandler . La version Mac est déjà disponible!

Était-ce utile?

La solution

Après avoir creusé des tonnes de documents inutiles à msdn et du débogage je l'ai trouvé le chaînon manquant: appels à SetupDi setupapi.h: Plus d'infos ainsi que le code source pour Mac et Windows peuvent être trouvés dans mon projet USBEventHandler à github.com avec des sources pour Mac et Windows.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top