IVssBackupComponents::AddComponent-Methode (vsbackup.h)

Die AddComponent-Methode wird verwendet, um dem Sicherungssatz im Dokument "Sicherungskomponenten dokumentieren" explizit alle erforderlichen Komponenten hinzuzufügen (nicht für Sicherungskomponenten, ohne dass für Sicherungs-Vorgänger ausgewählt werden kann) sowie solche optionalen (für die Sicherung auswählbaren) Komponenten, die der Anforderer für notwendig erachtet. Elemente von Komponentensätzen (Komponenten mit einem für Sicherungs-Vorgänger auswählbaren) werden implizit in den Sicherungssatz eingeschlossen, aber nicht explizit dem Dokument Sicherungskomponenten hinzugefügt.

Syntax

HRESULT AddComponent(
  [in] VSS_ID             instanceId,
  [in] VSS_ID             writerId,
  [in] VSS_COMPONENT_TYPE ct,
  [in] LPCWSTR            wszLogicalPath,
  [in] LPCWSTR            wszComponentName
);

Parameter

[in] instanceId

Identifiziert einen bestimmten instance eines Writers.

[in] writerId

Writer-Klassenbezeichner.

[in] ct

Gibt den Typ der Komponente an. Zulässige Eingabewerte finden Sie in der Dokumentation für VSS_COMPONENT_TYPE .

[in] wszLogicalPath

Breite Null-Zeichenfolge mit Null-Endung, die den logischen Pfad der für die Sicherungskomponente auswählbaren enthält. Weitere Informationen finden Sie unter Logisches Pathing von Komponenten.

Beim Hinzufügen einer Komponente ist kein logischer Pfad erforderlich. Daher kann der Wert dieses Parameters NULL sein.

Es gibt keine Einschränkungen für die Zeichen, die in einem logischen Pfad ohne NULL angezeigt werden können.

[in] wszComponentName

Breite Null-Zeichenfolge mit Null-Endung, die den Namen der für die Sicherungskomponente auswählbaren enthält.

Der Wert dieses Parameters darf nicht NULL sein.

Es gibt keine Einschränkungen für die Zeichen, die in einem logischen Pfad ohne NULL angezeigt werden können.

Rückgabewert

Im Folgenden sind die gültigen Rückgabecodes für diese Methode aufgeführt.

Wert Bedeutung
S_OK
Die Komponente wurde erfolgreich hinzugefügt.
E_INVALIDARG
Einer der Parameterwerte ist ungültig.
E_OUTOFMEMORY
Der Aufrufer verfügt nicht über 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 in der richtigen Sequenz aufgerufen.
VSS_E_INVALID_XML_DOCUMENT
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_OBJECT_ALREADY_EXISTS
Das Objekt ist ein Duplikat. Eine Komponente mit demselben logischen Pfad und Komponentennamen ist bereits 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

Die AddComponent-Methode hat nur Bedeutung, wenn der Sicherungsvorgang im Komponentenmodus stattfindet.

Nur diese Arten von Komponenten sollten mithilfe von AddComponent zum Dokument Sicherungskomponenten hinzugefügt werden.

  • Komponenten, die für die Sicherung ausgewählt werden können (siehe Auswahl für sicherung).
  • Nicht auswählbare Sicherungskomponenten ohne für die Sicherung auswählbare Vorgänger.

Nicht für Sicherungskomponenten, die in der Hierarchie ihrer logischen Pfade über einen sicherungsvorläufer auswählbaren Verfügen, sind Teil eines Komponentensatzes, der durch das für Sicherungsvorläufer auswählbare definiert wird. Diese Komponenten werden implizit dem Dokument sicherungskomponenten hinzugefügt, wenn der Vorgänger hinzugefügt wird. Sie sollten niemals explizit dem Dokument der Sicherungskomponenten eines Anforderers mithilfe von AddComponent hinzugefügt werden. Das Ergebnis ist nicht definiert (siehe Arbeiten mit Selektivität und logischen Pfaden).

Für Sicherungskomponenten auswählbar, die für Sicherungs-Vorgänger ausgewählt werden können, sind auch Unterkomponenten in einem Komponentensatz. Sie können implizit ausgewählt werden, wenn ihr Vorgänger ausgewählt ist (in diesem Fall werden sie nicht dem Dokument der Sicherungskomponenten mithilfe von AddComponent hinzugefügt), oder sie können explizit mit AddComponent ausgewählt werden.

Die Kombination aus logischem Pfad und Name für jede Komponente einer bestimmten instance einer bestimmten Klasse von Writer muss eindeutig sein. Der Versuch, AddComponent zweimal mit denselben Werten wie wszLogicalPath und wszComponentName aufzurufen, führt zu einem VSS_E_OBJECT_ALREADY_EXISTS Fehler.

Die Unterscheidung zwischen der instanceId und der writerID ist erforderlich, da es möglich ist, mehrere Kopien für denselben Writer auszuführen.

Der Klassenbezeichner eines Writers und instance können durch Aufrufen von IVssExamineWriterMetadata::GetIdentity gefunden werden.

Bevor AddComponent aufgerufen wird, muss ein Anforderer für die Sicherung initialisiert worden sein, indem IVssBackupComponents::InitializeForBackup und IVssBackupComponents::GatherWriterMetadata aufgerufen wird. Weitere Informationen finden Sie unter Übersicht über die Sicherungsinitialisierung.

Der Anforderer muss AddComponent aufrufen, um der Schattenkopie die erforderlichen Komponenten hinzuzufügen, bevor er IVssBackupComponents::D oSnapshotSet aufruft , um die Schattenkopie zu erstellen. Weitere Informationen finden Sie unter Übersicht über die Sicherungsermittlungsphase und Übersicht über Aufgaben vor der Sicherung.

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 (einschließlich VsBackup.h, Vss.h, VsWriter.h)
Bibliothek VssApi.lib

Weitere Informationen

CVssWriter::Initialize

IVssBackupComponents

IVssBackupComponents::P repareForBackup

IVssExamineWriterMetadata::GetIdentity

VSS_COMPONENT_TYPE