VDS_ASYNC_OUTPUT_TYPE enumeration (vds.h)

[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_UNKNOWN
Value: 0
The value is reserved.
VDS_ASYNCOUT_CREATEVOLUME
Value: 1
The operation returns the IUnknown pointer for the newly
created volume object. For operation details, see the
IVdsPack::CreateVolume method.
VDS_ASYNCOUT_EXTENDVOLUME
Value: 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_SHRINKVOLUME
Value: 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_ADDVOLUMEPLEX
Value: 4
The operation adds a volume as a plex to the current volume. For operation details, see the
IVdsVolume::AddPlex method.
VDS_ASYNCOUT_BREAKVOLUMEPLEX
Value: 5
The operation returns the IUnknown pointer for the
hidden volume object. For operation details, see the
IVdsVolume::BreakPlex method.
VDS_ASYNCOUT_REMOVEVOLUMEPLEX
Value: 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_REPAIRVOLUMEPLEX
Value: 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_RECOVERPACK
Value: 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_REPLACEDISK
Value: 9
This value is reserved for future use.
VDS_ASYNCOUT_CREATEPARTITION
Value: 10
The operation creates a new partition on a basic disk. For operation details, see the
IVdsAdvancedDisk::CreatePartition
method.
VDS_ASYNCOUT_CLEAN
Value: 11
IVdsAdvancedDisk::Clean
VDS_ASYNCOUT_CREATELUN
Value: 50
The operation returns the IUnknown pointer for the newly
created LUN object. For operation details, see the
IVdsSubSystem::CreateLun method.
VDS_ASYNCOUT_ADDLUNPLEX
Value: 52
The operation adds a LUN to the target LUN as a new plex. For operation details, see the
IVdsLun::AddPlex method.
VDS_ASYNCOUT_REMOVELUNPLEX
Value: 53
The operation returns the IUnknown pointer for the
removed LUN object. For operation details, see the
IVdsLun::RemovePlex method.
VDS_ASYNCOUT_EXTENDLUN
Value: 54
The operation extends a LUN by a specified number of bytes. For operation details, see the
IVdsLun::Extend method.
VDS_ASYNCOUT_SHRINKLUN
Value: 55
The operation shrinks a LUN by a specified number of bytes. For operation details, see the
IVdsLun::Shrink method.
VDS_ASYNCOUT_RECOVERLUN
Value: 56
The operation starts a recovery operation on a LUN. For operation details, see the
IVdsLun::Recover method.
VDS_ASYNCOUT_LOGINTOTARGET
Value: 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_LOGOUTFROMTARGET
Value: 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_CREATETARGET
Value: 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_CREATEPORTALGROUP
Value: 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_DELETETARGET
Value: 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_ADDPORTAL
Value: 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_REMOVEPORTAL
Value: 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_DELETEPORTALGROUP
Value: 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_FORMAT
Value: 101
The operation formats a volume. For operation details, see the
IVdsVolumeMF::Format method.
VDS_ASYNCOUT_CREATE_VDISK
Value: 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_VDISK
Value: 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_VDISK
Value: 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_VDISK
Value: 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_VDISK
Value: 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 vds.h

See also

IVdsAdvancedDisk

IVdsIscsiInitiatorAdapter

IVdsIscsiPortalGroup

IVdsIscsiTarget

IVdsLun

IVdsPack

IVdsSubSystem

IVdsSubSystemIscsi

IVdsVolume

IVdsVolumePlex

VDS Enumerations

VDS_ASYNC_OUTPUT