In un'applicazione C#, che cosa sono alcuni buoni modi per rilevare la presenza di alcuni dispositivo collegato al computer? Programmaticamente, ovviamente. Ho bisogno di supporto di Windows XP e 7.Come per rilevare la presenza di alcuni dispositivi
Sfondo
mi è stata data una grande # un'applicazione C che utilizza qualche dispositivo collegato. I dispositivi sono hardware personalizzati e non sono progettati per l'utilizzo senza il software. Quando l'app C# viene avviata, cerca tali dispositivi connessi e comunica con loro quando appropriato. Possono esserci più dispositivi collegati. Non ho esaminato il codice sorgente che cerca i dispositivi. I dispositivi sono collegati al PC tramite USB o cavo seriale. Appaiono come porta COM in Gestione dispositivi. A volte possono esserci hub USB o convertitori da seriale a USB tra il PC e il dispositivo.
Quando il dispositivo è collegato con alcuni hub USB, o certi convertitore seriale USB viene utilizzato, a volte il software non può rilevare correttamente il dispositivo. A volte varia da PC a PC. Non siamo sicuri se causa qualche driver.
mi hanno detto di esaminare il dispositivo di algoritmo di ricerca e, se possibile, trovare soluzione migliore e sostituire implementazione corrente. Non ho mai fatto questo tipo di compito prima e ho bisogno di imparare come Windows gestisce i dispositivi sotto il cofano.
Come posso cercare i dispositivi collegati specifici in C#? Quali sono alcune buone pratiche e di cosa dovrei essere consapevole o evitare?
Forse questo articolo è interresting: http://stackoverflow.com/questions/68749/working-with-usb-devices-in-net e http://www.developerfusion.com/article/84338/making-usb-c-friendly/ – Ruben
È possibile enumerare tutti i dispositivi (USB) connessi utilizzando WMI o simili. Sono abbastanza lenti a lavorare con quanto posso ricordare. Ci potrebbero essere modi migliori però. http://stackoverflow.com/questions/3331043/get-list-of-connected-usb-devices – CodingBarfield