IVdsLun::Shrink-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.]
Verkleinert eine LUN um eine angegebene Anzahl von Bytes.
Syntax
HRESULT Shrink(
[in] ULONGLONG ullNumberOfBytesToRemove,
[out] IVdsAsync **ppAsync
);
Parameter
[in] ullNumberOfBytesToRemove
Die Anzahl der Bytes, um die die LUN verkleinert werden soll. Die Anzahl der Bytes muss kein gerades Vielfaches der Block- oder Sektorgröße sein.
[out] ppAsync
Die Adresse eines IVdsAsync-Schnittstellenzeigers . Aufrufer müssen die Schnittstelle freigeben. Verwenden Sie diese Schnittstelle, um die status des Vorgangs abzubrechen, abzuwarten oder abzufragen.
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 |
---|---|
|
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. |
|
Das LUN-Objekt ist nicht mehr vorhanden. |
|
Die LUN weist einen Fehlerstatus auf und kann den angeforderten Vorgang nicht ausführen. |
|
Ein weiterer Vorgang wird ausgeführt; Dieser Vorgang kann erst fortgesetzt werden, wenn der vorherige Vorgang abgeschlossen ist. |
Hinweise
Implementierer müssen einen Zeiger auf die IVdsAsync-Schnittstelle für diese Methode zurückgeben, unabhängig davon, ob der Aufruf einen asynchronen Vorgang initiiert.
Nachdem die LUN verkleinert wurde, sollte der Aufrufer den IOCTL_DISK_UPDATE_PROPERTIES Steuercode verwenden, um die aktualisierte Datenträgergröße auf dem Computer sichtbar zu machen, für den die LUN entmasket ist.
Implementierer müssen die Bytes am Ende der LUN entfernen.
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 |