要获得卷GUID我试图像下面GetVolumeNameForVolumeMountPoint返回false
int len = wcslen(pDetData->DevicePath);
pDetData->DevicePath[len] = '\\';
pDetData->DevicePath[len+1] = 0;
#define BUFFER_SIZE MAX_PATH
WCHAR volume[BUFFER_SIZE];
BOOL bFlag;
bFlag = GetVolumeNameForVolumeMountPoint(pDetData->DevicePath, volume, BUFFER_SIZE);
int loginErrCode = GetLastError();
printf("loginErrCode: %d\n", loginErrCode);
printf("BFLAG: %d\n", bFlag);
的GetLastError函数()也打印它作为1的代码。这意味着ERROR_INVALID_FUNCTION。 bFlag总是返回零,这意味着错误。
我的代码有什么问题...
假设这是您的相关问题的另一个问题,您不能使用USB设备(GUID_DEVINTERFACE_USB_DEVICE)和GetVolumeNameForVolumeMountPoint;该功能仅适用于卷设备(GUID_DEVINTERFACE_VOLUME)。 – Luke 2010-06-09 16:55:33