IVdsSubSystem2::GetDrive2 method (vds.h)

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

Returns the specified drive. This method is identical to the IVdsSubSystem::GetDrive method, except that it includes the enclosure number as a parameter.

Syntax

HRESULT GetDrive2(
  [in]  SHORT     sBusNumber,
  [in]  SHORT     sSlotNumber,
  [in]  ULONG     ulEnclosureNumber,
  [out] IVdsDrive **ppDrive
);

Parameters

[in] sBusNumber

The number of the bus to which the drive is connected.

[in] sSlotNumber

The number of the slot the drive occupies.

[in] ulEnclosureNumber

The number of the enclosure that contains the drive. This parameter corresponds to the ulEnclosureNumber member of the VDS_DRIVE_PROP2 structure.

[out] ppDrive

The address of an IVdsDrive interface pointer. Callers must release the interface.

Return value

This method can return standard HRESULT values, such as E_INVALIDARG or E_OUTOFMEMORY, and VDS-specific return values. It can also return converted system error codes using the HRESULT_FROM_WIN32 macro. Errors can originate from VDS itself or from the underlying VDS provider that is being used. Possible return values include the following.

Return code/value Description
VDS_E_PROVIDER_CACHE_CORRUPT
0x8004241FL
There is a software or communication problem inside a provider that caches information about the array. Use the IVdsHwProvider::Reenumerate method followed by the IVdsHwProvider::Refresh method to restore the cache.
VDS_E_OBJECT_DELETED
0x8004240BL
The subsystem object is no longer present.
VDS_E_OBJECT_STATUS_FAILED
0x80042431L
The subsystem is in a failed state and is unable to perform the requested operation.
VDS_E_ANOTHER_CALL_IN_PROGRESS
0x80042404L
Another operation is in progress; this operation cannot proceed until the previous operation or operations are complete.

Requirements

Requirement Value
Minimum supported client Windows 7 [desktop apps only]
Minimum supported server Windows Server 2008 R2 [desktop apps only]
Target Platform Windows
Header vds.h
Library Uuid.lib

See also

IVdsDrive2

IVdsHwProvider::Reenumerate

IVdsHwProvider::Refresh

IVdsSubSystem2

IVdsSubSystem::GetDrive

IVdsSubSystem::QueryDrives