IVssBackupComponents::GetWriterStatus-Methode (vsbackup.h)

Die GetWriterStatus-Methode gibt die status des angegebenen Writers zurück.

Syntax

HRESULT GetWriterStatus(
  [in]  UINT             iWriter,
  [out] VSS_ID           *pidInstance,
  [out] VSS_ID           *pidWriter,
  [out] BSTR             *pbstrWriter,
  [out] VSS_WRITER_STATE *pnStatus,
  [out] HRESULT          *phResultFailure
);

Parameter

[in] iWriter

Index des Writers, dessen Metadaten abgerufen werden sollen. Der Wert dieses Parameters ist eine ganze Zahl von 0 bis einschließlich n–1, wobei n die Gesamtzahl der Writer im aktuellen System ist. Der Wert von n wird von IVssBackupComponents::GetWriterStatusCount zurückgegeben.

[out] pidInstance

Die Adresse einer vom Aufrufer zugeordneten Variablen, die den instance Bezeichner des Writers empfängt.

[out] pidWriter

Die Adresse einer vom Aufrufer zugeordneten Variablen, die den Bezeichner für die Writer-Klasse empfängt.

[out] pbstrWriter

Die Adresse einer vom Aufrufer zugeordneten Variablen, die eine Zeichenfolge mit dem Namen des angegebenen Writers empfängt.

[out] pnStatus

Die Adresse einer vom Aufrufer zugeordneten Variablen, die einen VSS_WRITER_STATE Enumerationswert empfängt.

[out] phResultFailure

Die Adresse einer vom Aufrufer zugeordneten Variablen, die den vom Writer zurückgegebenen HRESULT-Fehlercode empfängt.

Im Folgenden werden die unterstützten Werte für pHrResultFailure aufgeführt.

Wert Bedeutung
S_OK
Der Schreiber war erfolgreich.
VSS_E_WRITERERROR_INCONSISTENTSNAPSHOT
Die Schattenkopie enthält nur eine Teilmenge der Volumes, die der Writer benötigt, um die Anwendungskomponente ordnungsgemäß zu sichern.
VSS_E_WRITERERROR_OUTOFRESOURCES
Dem Writer ist der Arbeitsspeicher oder andere Systemressourcen nicht mehr verfügbar. Die empfohlene Möglichkeit, diesen Fehlercode zu behandeln, besteht darin, zehn Minuten zu warten und den Vorgang dann bis zu dreimal zu wiederholen.
VSS_E_WRITERERROR_TIMEOUT
Der Writer-Vorgang ist aufgrund eines Timeouts zwischen den Freeze- und Thaw-Ereignissen fehlgeschlagen. Die empfohlene Möglichkeit, diesen Fehlercode zu behandeln, besteht darin, zehn Minuten zu warten und den Vorgang dann bis zu dreimal zu wiederholen.
VSS_E_WRITERERROR_RETRYABLE
Fehler beim Writer aufgrund eines Fehlers, der wahrscheinlich nicht auftreten würde, wenn der gesamte Erstellungsprozess für Sicherung, Wiederherstellung oder Schattenkopie neu gestartet wurde. Die empfohlene Möglichkeit, diesen Fehlercode zu behandeln, besteht darin, zehn Minuten zu warten und den Vorgang dann bis zu dreimal zu wiederholen.
VSS_E_WRITERERROR_NONRETRYABLE
Der Writervorgang ist aufgrund eines Fehlers fehlgeschlagen, der möglicherweise erneut auftritt, wenn eine weitere Schattenkopie erstellt wird. Weitere Informationen finden Sie unter Ereignis- und Fehlerbehandlung unter VSS.
VSS_E_WRITER_NOT_RESPONDING
Der Writer reagiert nicht.
VSS_E_WRITER_STATUS_NOT_AVAILABLE
Die Writer-status ist für mindestens einen Writer nicht verfügbar. Ein Writer hat möglicherweise die maximale Anzahl verfügbarer Sicherungs- und Wiederherstellungssitzungen erreicht.

Windows Vista, Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt.

Rückgabewert

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

Wert Bedeutung
S_OK
Die status des angegebenen Writer wurde erfolgreich zurückgegeben. Beachten Sie, dass der Wert des pHrWriterFailure-Parameters überprüft werden muss, um zu überprüfen, ob der Writer erfolgreich war. Die Writerfehlercodes können zu den in VsWriter.h und in Writerfehlern und Vetoes aufgeführten Gehören.
E_INVALIDARG
Einer der Parameterwerte ist ungültig.
E_OUTOFMEMORY
Der Aufrufer verfügt über nicht genügend Arbeitsspeicher oder andere Systemressourcen.
VSS_E_BAD_STATE
Das Sicherungskomponentenobjekt wird nicht initialisiert, diese Methode wurde während eines Wiederherstellungsvorgangs aufgerufen, oder diese Methode wurde nicht innerhalb der richtigen Sequenz aufgerufen.
VSS_E_OBJECT_NOT_FOUND
Der angegebene Writer ist nicht vorhanden.
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

Ein Anforderer muss den asynchronen Vorgang IVssBackupComponents::GatherWriterStatus aufrufen und warten, bis er abgeschlossen ist, bevor GetWriterStatus aufgerufen wird.

Wenn der Aufrufer den Zugriff auf die von dieser Methode zurückgegebenen status Informationen beendet hat, sollte er SysFreeString aufrufen, um den arbeitsspeicher des pbstrWriter-Parameters freizugeben.

Die VSS_E_WRITERERROR_XXX-Werte , die im pHrResultFailure-Parameter zurückgegeben werden, werden von Writern generiert. VSS_E_WRITER_NOT_RESPONDING und VSS_E_WRITER_STATUS_NOT_AVAILABLE werden von VSS generiert.

Anforderungen

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

Weitere Informationen

IVssBackupComponents

IVssBackupComponents::GatherWriterStatus

IVssBackupComponents::GetWriterStatusCount