Examinando o sistema Windows local para dispositivos USB anexados usando C ++
-
26-09-2019 - |
Pergunta
Qual é a melhor maneira de digitalizar o sistema Windows local para dispositivos USB anexados usando C ++? Preciso obter uma lista de IDs de fornecedor e produto para corresponder aos IDs do meu dispositivo. Se houver uma maneira de digitalizar uma combinação específica de VID/PID, isso seria ainda melhor. Meu objetivo final é recuperar o Virtual Com Port Windows atribuído ao dispositivo. Se houver uma maneira de fazer tudo isso, seria fantástico. Como sempre, exemplos são muito apreciados. Obrigado.
Solução 2
Consegui isso, consultando o WMI para obter as informações necessárias. Basicamente, pude começar com o código de exemplo da Microsoft, modificá -lo um pouco e, finalmente, construí -lo em minha própria classe que faz o que eu preciso.
http://msdn.microsoft.com/en-us/library/aa390423%28v=vs.85%29.aspx
Esta lista de aulas de hardware do sistema de computador também foi útil:
http://msdn.microsoft.com/en-us/library/aa389273%28v=vs.85%29.aspx
Usei o criador de código WMI para visualizar os resultados do que parecia ser classes promissoras.
No final, usei o seguinte:
- Namespace:
root\CIMV2
- Classe:
Win32_SerialPort
- Propriedade:
PNPDeviceID
eDeviceID
Outras dicas
Este é praticamente um exemplo do MSDN do que você deseja:
http://msdn.microsoft.com/en-us/library/ff558728%28vs.85%29.aspx
Parece que você precisará do WDK se quiser acessar esse tipo de funcionalidade (toda pesquisa do MSDN que posso pensar sugere isso).