IVdsSubSystem::QueryMaxLunCreateSize-Methode (vds.h)

[Ab Windows 8 und Windows Server 2012 wird die COM-Schnittstelle des Virtuellen Datenträgerdiensts durch die Windows Storage Management-API abgelöst.]

Gibt die Größe der maximalen LUN zurück, die mit dem angegebenen LUN-Typ und den angegebenen Hinweisen erstellt werden kann.

Syntax

HRESULT QueryMaxLunCreateSize(
  [in]  VDS_LUN_TYPE  type,
  [in]  VDS_OBJECT_ID *pDriveIdArray,
  [in]  LONG          lNumberOfDrives,
  [in]  VDS_HINTS     *pHints,
  [out] ULONGLONG     *pullMaxLunSize
);

Parameter

[in] type

Der LUN-Typ, der von VDS_LUN_TYPE aufgezählt wird.

[in] pDriveIdArray

Ein Zeiger auf ein Array, das eine VDS_OBJECT_ID für jedes der Laufwerke enthält, die bei der LUN-Erstellung verwendet werden sollen. Der Anbieter sollte versuchen, die Laufwerke in der angegebenen Reihenfolge zu verwenden. Dieser Parameter kann NULL sein, wenn der lNumberOfDrives-Parameter 0 ist. In diesem Fall sollte der Anbieter automatisch Laufwerke auswählen.

[in] lNumberOfDrives

Die Anzahl der Einträge in pDriveIdArray. Dies kann auf 0 festgelegt werden.

[in] pHints

Ein Zeiger auf die VDS_HINTS Struktur, die zum Erstellen der LUN verwendet wird. Die Hinweise haben immer eine niedrigere Priorität als die zuvor aufgeführten Parameter. Dieses Argument muss nicht NULL sein.

[out] pullMaxLunSize

Ein Zeiger auf einen Puffer, der die maximale Größe der LUN in Bytes enthält. Dieses Argument muss nicht NULL sein.

Rückgabewert

Diese Methode kann HRESULT-Standardwerte wie E_INVALIDARG oder E_OUTOFMEMORY und VDS-spezifische Rückgabewerte zurückgeben. Es kann auch konvertierte Systemfehlercodes mithilfe des makros HRESULT_FROM_WIN32 zurückgeben. Fehler können vom VDS selbst oder vom zugrunde liegenden VDS-Anbieter stammen, der verwendet wird. Folgende Rückgabewerte sind möglich.

Rückgabecode/-wert BESCHREIBUNG
VDS_E_PROVIDER_CACHE_CORRUPT
0x8004241FL
Dieser Rückgabewert signalisiert ein Software- oder Kommunikationsproblem innerhalb eines Anbieters, der Informationen über das Array zwischenspeichert. Verwenden Sie die IVdsHwProvider::Reenumerate-Methode gefolgt von der IVdsHwProvider::Refresh-Methode , um den Cache wiederherzustellen.
VDS_E_OBJECT_DELETED
0x8004240BL
Das Subsystemobjekt ist nicht mehr vorhanden.
VDS_E_OBJECT_STATUS_FAILED
0x80042431L
Das Subsystem weist einen Fehlerstatus auf und kann den angeforderten Vorgang nicht ausführen.
VDS_E_ANOTHER_CALL_IN_PROGRESS
0x80042404L
Ein weiterer Vorgang wird ausgeführt; Dieser Vorgang kann erst fortgesetzt werden, wenn der vorherige Vorgang abgeschlossen ist.
VDS_E_OBJECT_NOT_FOUND
0x80042405L
Kann von jeder Methode zurückgegeben werden, die eine VDS_OBJECT_ID Konstante akzeptiert. Dieser Rückgabewert gibt an, dass der Bezeichner nicht auf ein vorhandenes Objekt verweist.
VDS_E_NOT_SUPPORTED
0x80042400L
Dieser Vorgang oder eine Kombination von Parametern wird von diesem Anbieter nicht unterstützt.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile vds.h
Bibliothek Uuid.lib

Weitere Informationen

IVdsHwProvider::Reenumerate

IVdsHwProvider::Refresh

IVdsSubSystem

VDS_HINTS

VDS_LUN_TYPE