IOCTL_MOUNTDEV_QUERY_UNIQUE_ID的唯一性
关于
IOCTL_MOUNTDEV_QUERY_UNIQUE_ID
的文档有点令人困惑......究竟应该在MOUNTDEV_UNIQUE_ID
结构中返回什么样的ID?
的文档
typedef struct _MOUNTDEV_UNIQUE_ID {
USHORT UniqueIdLength;
UCHAR UniqueId[1];
} MOUNTDEV_UNIQUE_ID, *PMOUNTDEV_UNIQUE_ID;
说:
UniqueIdLength
包含唯一卷ID的长度。
UniqueId
包含唯一的卷ID。唯一卷名称的格式为"??Volume{GUID}"
,其中GUID是标识卷的全局唯一标识符。
然而,这里有一些奇怪的东西:UniqueId
的确切格式应该是什么?如果它的意思是??Volume{GUID}
格式,那么UniqueIdLength
字段的重点是 - 它们的大小不一样吗?否则,设备ID需要采用何种格式?
此外,这是设备ID还是卷ID?换句话说,这应该是每个媒体(例如CD)还是每个设备(CD驱动器)的唯一?
没有找到相关结果
已邀请:
2 个回复
俺呵誓放胳
变量只是一个占位符,实际上它被用作
变量。 每个介质和每个设备的ID都是唯一的 - 这取决于您是在与卷驱动程序还是设备类驱动程序进行通信。该ID旨在识别“可以安装的东西” - 例如, CD-ROM设备,固定磁盘分区或未分区的可移动磁盘。安装管理器使用ID a.o.查找之前安装此特定卷的位置,并在同一点重新安装它。
醒荒捆府绣
并得到一个字符串作为与设备接口路径类似的格式,但它只是前缀4个字符的不同,然后它保存在注册表
。