VDS_DRIVE_NOTIFICATION 结构 (vds.h)

[从 Windows 8 和 Windows Server 2012 开始,虚拟磁盘服务 COM 接口由 Windows 存储管理 API 取代。]

定义驱动器事件的详细信息。

语法

typedef struct _VDS_DRIVE_NOTIFICATION {
  ULONG         ulEvent;
  VDS_OBJECT_ID driveId;
} VDS_DRIVE_NOTIFICATION;

成员

ulEvent

确定要通知应用程序的驱动器事件,作为以下值之一。

含义
VDS_NF_DRIVE_ARRIVE
105
驱动器报告为物理存在于子系统上。 与此通知关联的 VDS_DRIVE_STATUS 值应该是 除 VDS_DRS_REMOVED 之外的任何值。
VDS_NF_DRIVE_DEPART
106
驱动器已从子系统中物理删除。 VDS_DRIVE_STATUS值应VDS_DRS_UNKNOWNVDS_DRS_REMOVED
VDS_NF_DRIVE_MODIFY
107
VDS_DRIVE_PROP 结构的成员已更改,或者驱动器上的盘区已更改。
VDS_NF_DRIVE_REMOVED
354
用作 RAID 组或存储池一部分的驱动器不再用作 RAID 组或存储池的一部分。 例如,如果检测到 RAID 组驱动器发生故障并替换为热备用驱动器,则 VDS_DRIVE_STATUS 值应 VDS_DRS_FAILED (从使用中删除,因为故障 ) ,VDS_DRS_OFFLINE (未发生故障,但在) 、 VDS_DRS_NOT_READYVDS_DRS_UNKNOWN未使用。 如果在重新平衡存储过程中删除了驱动器,则驱动器不会发生故障,并且 VDS_DRIVE_STATUS 值应 VDS_DRS_OFFLINEVDS_DRS_NOT_READY

Windows Server 2008、Windows Vista 和 Windows Server 2003: 不支持此值。

driveId

触发事件的驱动器的 GUID。

注解

VDS_NOTIFICATION 结构包括此结构作为成员。

应用程序可以通过实现 IVdsAdviseSink 接口并将接口指针作为参数传递给 IVdsService::Advise 方法来接收驱动器事件。

若要获取驱动器对象,请使用 IVdsService::GetObject 方法。 然后,可以使用 IVdsDrive::GetProperties 方法或 IVdsDrive2::GetProperties2 方法获取驱动器属性。

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
标头 vds.h

另请参阅

IVdsAdviseSink

IVdsService::Advise

VDS 结构

VDS_DRIVE_PROP

VDS_NOTIFICATION