Freigeben über


IVssCreateWriterMetadata::SetRestoreMethod-Methode (vswriter.h)

Die SetRestoreMethod-Methode gibt an, wie die Daten des Writers wiederhergestellt werden sollen.

Syntax

HRESULT SetRestoreMethod(
  [in] VSS_RESTOREMETHOD_ENUM method,
  [in] LPCWSTR                wszService,
  [in] LPCWSTR                wszUserProcedure,
  [in] VSS_WRITERRESTORE_ENUM writerRestore,
  [in] bool                   bRebootRequired
);

Parameter

[in] method

VSS_RESTOREMETHOD_ENUM Wert, der die Methode angibt, die im Wiederherstellungsvorgang verwendet wird.

[in] wszService

Ein Zeiger auf eine Breitzeichenzeichenfolge, die den Namen eines Diensts enthält, der vor einem Wiederherstellungsvorgang beendet und dann nach dem Wiederherstellungsvorgang gestartet werden muss, wenn der Wert der Methode VSS_RME_STOP_RESTORE_START oder VSS_RME_RESTORE_STOP_START ist.

Wenn der Wert der -Methode nicht VSS_RME_STOP_RESTORE_START oder VSS_RME_RESTORE_STOP_START ist, wird dieses Argument nicht verwendet und sollte auf NULL festgelegt werden.

[in] wszUserProcedure

Für die zukünftige Verwendung reserviert. Der Wert dieses Parameters sollte immer auf NULL festgelegt werden.

[in] writerRestore

VSS_WRITERRESTORE_ENUM Wert, der angibt, ob der Writer an der Wiederherstellung seiner Daten beteiligt ist.

Express Writer müssen diesen Parameter auf VSS_WRE_NEVER festlegen.

[in] bRebootRequired

Boolescher Wert, der angibt, ob nach Abschluss des Wiederherstellungsvorgangs ein Neustart erforderlich ist.

Rückgabewert

Im Folgenden finden Sie die gültigen Rückgabecodes für diese Methode.

Wert Bedeutung
S_OK
0x00000000L
Der Vorgang wurde durchgeführt.
E_INVALIDARG
0x80070057L
Einer der Parameterwerte ist ungültig.
E_OUTOFMEMORY
0x8007000EL
Der Aufrufer verfügt über nicht genügend Arbeitsspeicher oder andere Systemressourcen.
VSS_E_INVALID_XML_DOCUMENT
0x80042311L
Das XML-Dokument ist ungültig. Überprüfen Sie das Ereignisprotokoll auf Details. Weitere Informationen finden Sie unter Ereignis- und Fehlerbehandlung unter VSS.
VSS_E_NOT_SUPPORTED
0x8004232FL
Der Aufrufer hat einen VSS_WRITERRESTORE_ENUM Wert angegeben, der für Express-Writer nicht unterstützt wird.
VSS_E_UNEXPECTED
Unerwarteter Fehler. Der Fehlercode wird in der Fehlerprotokolldatei protokolliert. Weitere Informationen finden Sie unter Ereignis- und Fehlerbehandlung unter VSS.

Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP: Dieser Wert wird erst unter Windows Server 2008 R2 und Windows 7 unterstützt. stattdessen wird E_UNEXPECTED verwendet.

Hinweise

Es ist eine einzelne Wiederherstellungsmethode für einen Writer definiert. Wenn die Wiederherstellungsmethode nicht überschrieben wird, werden alle Komponenten des Writers mit derselben Methode wiederhergestellt.

Writer überschreiben die Wiederherstellungsmethode komponentenweise, indem sie ein Wiederherstellungsziel festlegen, in der Regel bei der Behandlung eines PreRestore-Ereignisses (CVssWriter::OnPreRestore).

Es ist wichtig zu beachten, dass Trotz der Tatsache, dass Wiederherstellungsmethoden writerweit angewendet werden, Methoden auf Komponentenbasis implementiert werden. Wenn die durch den methodenparameter angegebene Methode beispielsweise VSS_RME_RESTORE_IF_CAN_REPLACE ist, werden alle Dateien in der Komponente an ihrem ursprünglichen Speicherort wiederhergestellt, wenn sie alle ersetzt werden können, ohne dass ein Fehler auftritt. Andernfalls werden sie an ihrem alternativen Speicherort wiederhergestellt, sofern angegeben.

Eine Datei sollte immer in ihrer alternativen Speicherortzuordnung wiederhergestellt werden, wenn eine der folgenden Punkte zutrifft:

  • Die Wiederherstellungsmethode (zum Zeitpunkt der Sicherung festgelegt) ist VSS_RME_RESTORE_TO_ALTERNATE_LOCATION.
  • Das Wiederherstellungsziel wurde (zum Zeitpunkt der Wiederherstellung) auf VSS_RT_ALTERNATE festgelegt.
Wenn keine gültige alternative Standortzuordnung definiert ist, stellt dies in beiden Fällen einen Writerfehler dar.

Eine Datei kann in einer alternativen Speicherortzuordnung wiederhergestellt werden, wenn eine der folgenden Punkte zutrifft:

  • Die Wiederherstellungsmethode ist VSS_RME_RESTORE_IF_NOT_THERE, und eine Version der Datei ist bereits auf dem Datenträger vorhanden.
  • Die Wiederherstellungsmethode ist VSS_RME_RESTORE_IF_CAN_REPLACE, und eine Version der Datei ist auf dem Datenträger vorhanden und kann nicht ersetzt werden.
Auch hier gilt: Wenn keine gültige alternative Standortzuordnung definiert ist, stellt dies einen Writerfehler dar.

Eine alternative Speicherortzuordnung wird nur während eines Wiederherstellungsvorgangs verwendet und sollte nicht mit einem alternativen Pfad verwechselt werden, der nur während eines Sicherungsvorgangs verwendet wird.

Weitere Informationen zu Wiederherstellungsmethoden finden Sie unter Festlegen von VSS-Wiederherstellungsmethoden.

Wenn die Wiederherstellungsmethode VSS_RME_STOP_RESTORE_START oder VSS_RME_RESTORE_STOP_START ist, muss der richtige Name des Diensts als wszService-Argument angegeben werden. Informationen zur Teilnahme des Writers am Beenden und Neustarten von Diensten während eines Wiederherstellungsvorgangs finden Sie unter Beenden von Diensten für die Wiederherstellung durch Anforderer.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile vswriter.h (enthalten Vss.h, VsWriter.h)
Bibliothek VssApi.lib

Weitere Informationen

CVssWriter::OnPostRestore

CVssWriter::OnPreRestore

IVssCreateWriterMetadata

IVssExamineWriterMetadata::GetRestoreMethod