Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

VDS_DRIVE_NOTIFICATION structure

[Beginning with Windows 8 and Windows Server 2012, the Virtual Disk Service COM interface is superseded by the Windows Storage Management API.]

Defines the details of drive events.

Syntax


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

Members

ulEvent

Determines the drive event for which an application will be notified, as one of the following values.

ValueMeaning
VDS_NF_DRIVE_ARRIVE
105

A drive is reported as physically present on the subsystem. The VDS_DRIVE_STATUS value associated with this notification should be any value except VDS_DRS_REMOVED.

VDS_NF_DRIVE_DEPART
106

A drive was physically removed from the subsystem. The VDS_DRIVE_STATUS value should be VDS_DRS_UNKNOWN or VDS_DRS_REMOVED.

VDS_NF_DRIVE_MODIFY
107

A member of the VDS_DRIVE_PROP structure changed, or an extent on a drive changed.

VDS_NF_DRIVE_REMOVED
354

A drive that was in use as part of a RAID group or storage pool is no longer in use as part of the RAID group or storage pool. For example, if a RAID group drive was detected as failing and was replaced with a hot spare, the VDS_DRIVE_STATUS value should be VDS_DRS_FAILED (removed from use because of failure), VDS_DRS_OFFLINE (not failed, but not in use), VDS_DRS_NOT_READY, or VDS_DRS_UNKNOWN. If the drive was removed as part of rebalancing the storage, the drive is not failing, and the VDS_DRIVE_STATUS value should be VDS_DRS_OFFLINE or VDS_DRS_NOT_READY.

Windows Server 2008, Windows Vista, and Windows Server 2003:  This value is not supported.

 

driveId

The GUID of the drive that triggered the event.

Remarks

The VDS_NOTIFICATION structure includes this structure as a member.

An application can receive drive events by implementing the IVdsAdviseSink interface and passing the interface pointer as an argument to the IVdsService::Advise method.

To get the drive object, use the IVdsService::GetObject method. You can then use the IVdsDrive::GetProperties method or the IVdsDrive2::GetProperties2 method to get the drive properties.

Requirements

Minimum supported client

Windows Vista [desktop apps only]

Minimum supported server

Windows Server 2003 [desktop apps only]

Header

Vds.h;
VdsHwPrv.h (for hardware providers)

See also

VDS Structures
VDS_DRIVE_PROP
VDS_NOTIFICATION
IVdsAdviseSink
IVdsService::Advise

 

 

Community Additions

Show:
© 2014 Microsoft