C++ 如何获取USB硬盘物理序列号、供应商id、产品id
我想得到USB硬盘序列号,供应商id,产品id没有WMI,我找到了 USBSTOR\Disk&Ven\U ST932042&Prod\ustrong>\u5VJ101RR&Rev\u SDM1\222256410122&0 序列号为5VJ101RR,但在产品id中显示错误, 如何获取正确的USB磁盘供应商id、产品id、序列号 我的开发环境是Visual C++ 2008C++ 如何获取USB硬盘物理序列号、供应商id、产品id,c++,windows,C++,Windows,我想得到USB硬盘序列号,供应商id,产品id没有WMI,我找到了 USBSTOR\Disk&Ven\U ST932042&Prod\ustrong>\u5VJ101RR&Rev\u SDM1\222256410122&0 序列号为5VJ101RR,但在产品id中显示错误, 如何获取正确的USB磁盘供应商id、产品id、序列号 我的开发环境是Visual C++ 2008 谢谢获取VID和PID的一个简单方法是从%WINDOWS%\System32加载设备INI文件,我认为这是通常复制INI的
谢谢获取VID和PID的一个简单方法是从%WINDOWS%\System32加载设备INI文件,我认为这是通常复制INI的地方。如果您知道INI文件的名称,那么它是微不足道的。如果要寻找编程方法,可以使用Win32 Setup API枚举USB总线 如果您已经在机器上安装了Wnidows驱动程序工具包,请查看。它演示了如何枚举USB总线并获得所有设备的列表,包括它们的PID和VID
要获取序列号,请查看。我不确定是否可以保证所有硬盘设备上都有此信息,如果有,则可能不够可靠。我不知道您为什么希望这样做,但它通常被用作解决unicity和许可问题的第一种方法,实际上不应该这样做。感谢您的回复,很抱歉使用GetVolumeInformation()API,此函数返回格式化硬盘时操作系统分配的卷序列号。因此,格式化此USB硬盘时,序列号为chanage