我在Windows上使用qt。我的程序需要知道插入的USB閃存驅動器的供應商ID和產品ID。如何獲得在Windows上的QT的USB設備的供應商ID和PID?
我試圖實現this topic的示例,但我在WinUsb_Initialize function上遇到了分段錯誤。
這是我的代碼:
HANDLE hDevice = CreateFileA("\\\\.\\PhysicalDrive1", GENERIC_WRITE | GENERIC_READ ,
FILE_SHARE_READ | FILE_SHARE_WRITE, 0, OPEN_EXISTING, FILE_FLAG_OVERLAPPED, 0);
if(hDevice == INVALID_HANDLE_VALUE)
{
qDebug() << "hDevice - INVALID_HANDLE_VALUE";
}
else
{
qDebug() << "hDevice handle ok";
PWINUSB_INTERFACE_HANDLE phWinUSBHandle;
BOOL result = false;
result = WinUsb_Initialize(hDevice, phWinUSBHandle); //seg
}
我需要phWinUSBHandle使用WinUsb_GetDescriptor功能。
我會很感激任何幫助。也許有人知道一些替代方法來獲取Windows中的供應商ID和產品ID?
不,我沒有找到。 – sparkyfx 2016-07-30 13:33:55