Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
[Beginning with Windows 8 and Windows Server 2012, the Virtual Disk Service COM interface is superseded by the Windows Storage Management API.]
Defines the set of operations that objects can process.
Syntax
typedef enum _VDS_ASYNC_OUTPUT_TYPE {
VDS_ASYNCOUT_UNKNOWN = 0,
VDS_ASYNCOUT_CREATEVOLUME = 1,
VDS_ASYNCOUT_EXTENDVOLUME = 2,
VDS_ASYNCOUT_SHRINKVOLUME = 3,
VDS_ASYNCOUT_ADDVOLUMEPLEX = 4,
VDS_ASYNCOUT_BREAKVOLUMEPLEX = 5,
VDS_ASYNCOUT_REMOVEVOLUMEPLEX = 6,
VDS_ASYNCOUT_REPAIRVOLUMEPLEX = 7,
VDS_ASYNCOUT_RECOVERPACK = 8,
VDS_ASYNCOUT_REPLACEDISK = 9,
VDS_ASYNCOUT_CREATEPARTITION = 10,
VDS_ASYNCOUT_CLEAN = 11,
VDS_ASYNCOUT_CREATELUN = 50,
VDS_ASYNCOUT_ADDLUNPLEX = 52,
VDS_ASYNCOUT_REMOVELUNPLEX = 53,
VDS_ASYNCOUT_EXTENDLUN = 54,
VDS_ASYNCOUT_SHRINKLUN = 55,
VDS_ASYNCOUT_RECOVERLUN = 56,
VDS_ASYNCOUT_LOGINTOTARGET = 60,
VDS_ASYNCOUT_LOGOUTFROMTARGET = 61,
VDS_ASYNCOUT_CREATETARGET = 62,
VDS_ASYNCOUT_CREATEPORTALGROUP = 63,
VDS_ASYNCOUT_DELETETARGET = 64,
VDS_ASYNCOUT_ADDPORTAL = 65,
VDS_ASYNCOUT_REMOVEPORTAL = 66,
VDS_ASYNCOUT_DELETEPORTALGROUP = 67,
VDS_ASYNCOUT_FORMAT = 101,
VDS_ASYNCOUT_CREATE_VDISK = 200,
VDS_ASYNCOUT_ATTACH_VDISK = 201,
VDS_ASYNCOUT_COMPACT_VDISK = 202,
VDS_ASYNCOUT_MERGE_VDISK = 203,
VDS_ASYNCOUT_EXPAND_VDISK = 204
} VDS_ASYNC_OUTPUT_TYPE;
Constants
VDS_ASYNCOUT_UNKNOWNValue: 0 The value is reserved. |
VDS_ASYNCOUT_CREATEVOLUMEValue: 1 The operation returns the IUnknown pointer for the newly created volume object. For operation details, see the IVdsPack::CreateVolume method. |
VDS_ASYNCOUT_EXTENDVOLUMEValue: 2 The operation expands the size of the current volume by adding disk extents to each member of each plex. For operation details, see the IVdsVolume::Extend method. |
VDS_ASYNCOUT_SHRINKVOLUMEValue: 3 The operation reduces the size of the volume and all plexes and returns the released extents to free space. For operation details, see the IVdsVolume::Shrink method. |
VDS_ASYNCOUT_ADDVOLUMEPLEXValue: 4 The operation adds a volume as a plex to the current volume. For operation details, see the IVdsVolume::AddPlex method. |
VDS_ASYNCOUT_BREAKVOLUMEPLEXValue: 5 The operation returns the IUnknown pointer for the hidden volume object. For operation details, see the IVdsVolume::BreakPlex method. |
VDS_ASYNCOUT_REMOVEVOLUMEPLEXValue: 6 The operation removes one or more specified plexes from the current volume, releasing the extents. For operation details, see the IVdsVolume::RemovePlex method. |
VDS_ASYNCOUT_REPAIRVOLUMEPLEXValue: 7 The operation repairs a fault-tolerant volume plex by moving bad members to good disks. For operation details, see the IVdsVolumePlex::Repair method. |
VDS_ASYNCOUT_RECOVERPACKValue: 8 The operation returns a failing or failed pack to a healthy state, if possible. For operation details, see the IVdsPack::Recover method. |
VDS_ASYNCOUT_REPLACEDISKValue: 9 This value is reserved for future use. |
VDS_ASYNCOUT_CREATEPARTITIONValue: 10 The operation creates a new partition on a basic disk. For operation details, see the IVdsAdvancedDisk::CreatePartition method. |
VDS_ASYNCOUT_CLEANValue: 11 IVdsAdvancedDisk::Clean |
VDS_ASYNCOUT_CREATELUNValue: 50 The operation returns the IUnknown pointer for the newly created LUN object. For operation details, see the IVdsSubSystem::CreateLun method. |
VDS_ASYNCOUT_ADDLUNPLEXValue: 52 The operation adds a LUN to the target LUN as a new plex. For operation details, see the IVdsLun::AddPlex method. |
VDS_ASYNCOUT_REMOVELUNPLEXValue: 53 The operation returns the IUnknown pointer for the removed LUN object. For operation details, see the IVdsLun::RemovePlex method. |
VDS_ASYNCOUT_EXTENDLUNValue: 54 The operation extends a LUN by a specified number of bytes. For operation details, see the IVdsLun::Extend method. |
VDS_ASYNCOUT_SHRINKLUNValue: 55 The operation shrinks a LUN by a specified number of bytes. For operation details, see the IVdsLun::Shrink method. |
VDS_ASYNCOUT_RECOVERLUNValue: 56 The operation starts a recovery operation on a LUN. For operation details, see the IVdsLun::Recover method. |
VDS_ASYNCOUT_LOGINTOTARGETValue: 60 The operation logs in to a target. For operation details, see the IVdsIscsiInitiatorAdapter::LoginToTarget method. Windows Server 2003: This flag is not supported before Windows Server 2003 R2. |
VDS_ASYNCOUT_LOGOUTFROMTARGETValue: 61 The operation logs out from a target. For operation details, see the IVdsIscsiInitiatorAdapter::LogoutFromTarget method. Windows Server 2003: This flag is not supported before Windows Server 2003 R2. |
VDS_ASYNCOUT_CREATETARGETValue: 62 The operation returns the IUnknown interface pointer for the newly created target object. For operation details, see the IVdsSubSystemIscsi::CreateTarget method. Windows Server 2003: This flag is not supported before Windows Server 2003 R2. |
VDS_ASYNCOUT_CREATEPORTALGROUPValue: 63 The operation returns the IUnknown interface pointer for the newly created portal group object. For operation details, see the IVdsIscsiTarget::CreatePortalGroup method. Windows Server 2003: This flag is not supported before Windows Server 2003 R2. |
VDS_ASYNCOUT_DELETETARGETValue: 64 The operation deletes a target. For operation details, see the IVdsIscsiTarget::Delete method. Windows Server 2003: This flag is not supported before Windows Server 2003 R2. |
VDS_ASYNCOUT_ADDPORTALValue: 65 The operation adds a portal to a portal group. For operation details, see the IVdsIscsiPortalGroup::AddPortal method. Windows Server 2003: This flag is not supported before Windows Server 2003 R2. |
VDS_ASYNCOUT_REMOVEPORTALValue: 66 The operation removes a portal from a portal group. For operation details, see the IVdsIscsiPortalGroup::RemovePortal method. Windows Server 2003: This flag is not supported before Windows Server 2003 R2. |
VDS_ASYNCOUT_DELETEPORTALGROUPValue: 67 The operation deletes a portal group. For operation details, see the IVdsIscsiPortalGroup::Delete method. Windows Server 2003: This flag is not supported before Windows Server 2003 R2. |
VDS_ASYNCOUT_FORMATValue: 101 The operation formats a volume. For operation details, see the IVdsVolumeMF::Format method. |
VDS_ASYNCOUT_CREATE_VDISKValue: 200 The operation creates a virtual disk. For operation details, see the IVdsVdProvider::CreateVDisk method. Windows Server 2008, Windows Vista and Windows Server 2003: Not supported. |
VDS_ASYNCOUT_ATTACH_VDISKValue: 201 The operation attaches a virtual disk. For operation details, see the IVdsOpenVDisk::Attach method. Windows Server 2008, Windows Vista and Windows Server 2003: Not supported. |
VDS_ASYNCOUT_COMPACT_VDISKValue: 202 The operation compacts a virtual disk to reduce the physical size of the backing file. For operation details, see the IVdsOpenVDisk::Compact method. Windows Server 2008, Windows Vista and Windows Server 2003: Not supported. |
VDS_ASYNCOUT_MERGE_VDISKValue: 203 The operation merges a child virtual disk with its parents in the differencing chain. For operation details, see the IVdsOpenVDisk::Merge method. Windows Server 2008, Windows Vista and Windows Server 2003: Not supported. |
VDS_ASYNCOUT_EXPAND_VDISKValue: 204 The operation increases the size of a virtual disk to the maximum available on a fixed-size or expandable disk. For operation details, see the IVdsOpenVDisk::Expand method. Windows Server 2008, Windows Vista and Windows Server 2003: Not supported. |
Remarks
The VDS_ASYNC_OUTPUT structure includes a VDS_ASYNC_OUTPUT_TYPE value as a member to indicate an operation type.
Note Additional constants might be added to the VDS_ASYNC_OUTPUT_TYPE enumeration in future Windows versions. For this reason, your application must be designed to gracefully handle an unrecognized VDS_ASYNC_OUTPUT_TYPE enumeration constant.
Requirements
| Requirement | Value |
|---|---|
| Minimum supported client | Windows Vista [desktop apps only] |
| Minimum supported server | Windows Server 2003 [desktop apps only] |
| Header | vdshwprv.h |