Dokumentinhalt der Sicherungskomponenten
Das Dokument "Sicherungskomponenten" wird von Instanzen der IVssBackupComponents-Schnittstelle verwaltet. Diese Schnittstelle enthält auch zahlreiche Methoden zum Steuern von Sicherungsvorgängen, zum Bearbeiten von Schattenkopien und zum Abfragen des Systemzustands. Allerdings sind nicht alle Informationen des Dokuments direkt über diese Schnittstelle zugänglich.
Das Dokument "Sicherungskomponenten" besteht aus mehreren Datensätzen:
- Informationen darüber, welche Komponenten explizit in einen Sicherungs- oder Wiederherstellungsvorgang einbezogen wurden
- Eine Darstellung der gespeicherten Komponenten- und Writerinformationen
- Zustandsinformationen zum Sicherungs-/Wiederherstellungsvorgang
Während die Komponenteninformationen sowohl für den Anforderer als auch für den Writer verfügbar sind, hat nur der Writer Zugriff auf die Zustandsinformationen.
Komponenteneinschlussinformationen
Das Dokument "Sicherungskomponenten" enthält eine Liste der Komponenten, die explizit in die Sicherung und Wiederherstellung durch den Anforderer eingeschlossen sind. Die Liste enthält Folgendes:
Explizit auswählbare Komponenten eingeschlossen.
Die Aufnahme dieser Dateien in Sicherungsvorgänge wird durch IVssBackupComponents::AddComponent und in Wiederherstellungsvorgänge von IVssBackupComponents::SetSelectedForRestore angegeben.
Nicht für Sicherungsunterkomponenten ausgewählt, ohne dass ein Für Sicherungskomponenten-Vorgänger ausgewählt werden kann.
Alle diese Komponenten müssen enthalten sein, wenn Komponenten des Writers in den Vorgang einbezogen werden sollen. Die Aufnahme dieser Dateien in Sicherungsvorgänge wird durch IVssBackupComponents::AddComponent und in Wiederherstellungsvorgänge von IVssBackupComponents::SetSelectedForRestore angegeben.
Implizit zur Sicherung hinzugefügte Komponenten (Unterkomponenten), die für die Wiederherstellung auswählbar sind und explizit der Wiederherstellung hinzugefügt werden.
Diese Komponenten können entweder auswählbar oder nicht ausgewählt werden, verfügen aber über einen auswählbaren Vorgänger, der verwendet wurde, um sie implizit für die Sicherung auszuwählen. Sie werden dem Dokument "Sicherungskomponenten" von IVssBackupComponents::AddRestoreSubcomponent hinzugefügt.
Die Identitäten der implizit in die Wiederherstellung einbezogenen Komponenten werden nicht im Dokument Sicherungskomponenten gespeichert.
VSS hat Zugriff auf Informationen zur Komponenteneinbindung: Autoren, die keine Komponenten explizit in einer Wiederherstellung oder Sicherung enthalten, erhalten nach der Generierung der PrepareForBackup - oder PreRestore-Ereignisse keine VSS-Ereignisse.
Writer können diese Informationen nicht direkt abfragen. Dies ist keine wesentliche Einschränkung, da einzelne VSS-Autoren keine detaillierten Informationen über die status anderer Autoren auf dem System benötigen sollten und, wie oben erwähnt, diejenigen ohne enthaltene Komponenten nicht am VSS-Vorgang teilnehmen müssen.
Ein Anforderer kann bestimmen, welche Komponenten explizit in einen Vorgang eingeschlossen wurden.
Die IVssBackupComponents::GetWriterComponentsCount-Methode gibt die Anzahl der Autoren mit Komponenteninformationen zurück, die im Dokument Sicherungskomponenten gespeichert sind (und nicht die Anzahl der Komponenten im Dokument).
Der Anforderer indiziert die gespeicherten Writer-Informationen mithilfe von IVssBackupComponents::GetWriterComponents, wodurch Instanzen der IVssWriterComponentsExt-Schnittstelle zurückgegeben werden . Die IVssWriterComponentsExt-Schnittstelle ermöglicht es dem Anforderer, die Writer-Klasse und den Writer-instance der teilnehmenden Autoren abzurufen und auf Informationen über die komponenten zuzugreifen, die im Dokument Sicherungskomponenten gespeichert sind.
Informationen zu enthaltenen Komponenten
Die Darstellung der Komponentendaten des Sicherungskomponentendokuments (die keine Pfad- und Dateispezifikationsinformationen enthält), auf die über Instanzen der IVssComponent-Schnittstelle zugegriffen wird.
Anforderer und Autoren erhalten auf unterschiedliche Weise Zugriff auf Instanzen der IVssComponent-Schnittstelle .
Ein Anforderer untersucht Komponentendaten auf Writer-Basis mithilfe von Instanzen der IVssWriterComponentsExt-Schnittstelle , die von IVssBackupComponents::GetWriterComponents zurückgegeben wird.
Zusätzlich zu den Writer-Identifikationsinformationen stellt die IVssWriterComponentsExt-Schnittstelle ein Array von Instanzen der IVssComponent-Schnittstelle bereit – eine für jede der ausgewählten Writer enthaltene Komponenten.
Wie unter Backup Components Document Life Cycle erwähnt, können die Autoren über die IVssWriterComponents-Schnittstelle zugriff auf die gleichen Informationen erhalten, wenn sie das PrepareForBackup-, PrepareForSnapshot-, PostSnapshot-, BackupComplete-, PreRestore- oder PostRestore-Ereignis behandeln.
IVssComponent ermöglicht es sowohl Writern als auch Anforderern, die folgenden Informationen zu erhalten:
- Name, Typ und logischer Pfad einer Komponente (GetComponentName, GetComponentType, GetLogicalPath)
- Wie eine Komponente wiederhergestellt werden soll, wie vom Wiederherstellungsziel angegeben (IVssComponent::GetRestoreTarget)
- Wenn beim Wiederherstellen einer Datei ein alternativer Speicherort verwendet wurde (GetAlternateLocationMapping, GetAlternateLocationMappingCount)
- Neue Zielinformationen(falls vorhanden) (GetNewTarget, GetNewTargetCount)
- Fehlermeldungen vor und nach der Wiederherstellung (GetPreRestoreFailureMsg, GetPostRestoreFailureMsg)
- Wenn eine für die Sicherung auswählbare Komponente, die einen Komponentensatz definiert, für die Wiederherstellung ausgewählt wurde (IsSelectedForRestore)
- Gibt an, ob eine Sicherung oder Wiederherstellung erfolgreich war (GetBackupSucceeded, GetFileRestoreStatus)
- Alle Writer-spezifischen Sicherungs- oder Wiederherstellungsoptionen, die möglicherweise von IVssBackupComponents::SetBackupOptions oder IVssBackupComponents::SetRestoreOptions (GetBackupOptions, GetRestoreOptions) festgelegt wurden
- Alle Writer-spezifischen Metadaten zum Sichern oder Wiederherstellen von Metadaten (GetBackupMetadata), GetRestoreMetadata)
- Zeitstempelinformationen (GetBackupStamp, GetPreviousBackupStamp)
- Informationen zu Sicherungsunterkomponenten, die explizit in einer Wiederherstellung enthalten sind (GetRestoreSubcomponent, GetRestoreSubcomponentCount)
Im Gegensatz zu Anforderern können Autoren bestimmte Informationen im Dokument "Sicherungskomponenten" über die IVssComponent-Schnittstelle ändern:
- Wie eine Komponente wiederhergestellt werden soll, wie vom Wiederherstellungsziel angegeben (IVssComponent::SetRestoreTarget)
- Writerspezifische Sicherungs- und Wiederherstellungsmetadaten (IVssComponent::SetBackupMetadata, IVssComponent::SetRestoreMetadata)
- Zeitstempelinformationen (SetBackupStamp)
- Fehlermeldungen vor und nach der Wiederherstellung (SetPreRestoreFailureMsg, SetPostRestoreFailureMsg)
Statusinformationen des Anfordernden
Anforderer fügen Mithilfe der IVssBackupComponents-Schnittstelle Informationen zum Status eines Sicherungs- oder Wiederherstellungsvorgangs in das Dokument Sicherungskomponenten ein. Writer-Anwendungen können diese Informationen über die CVssWriter-Klasse abfragen.
Im Dokument "Sicherungskomponenten" gespeicherte Zustandsinformationen umfassen Folgendes:
Allgemeine Informationen zur Sicherung
- Der gesamte Sicherungstyp (inkrementell, differenzial oder vollständig)
Festlegen von Anforderern mithilfe von IVssBackupComponents::SetBackupState
Von Autoren mithilfe von CVssWriter::GetBackupType abgerufen
-
Festlegen von Anforderern mithilfe von IVssBackupComponents::SetBackupState
-
Von Autoren mithilfe von CVssWriter abgerufen::AreComponentsSelected
-
Festlegen von Anforderern mithilfe von IVssBackupComponents::SetBackupState
-
Von Autoren mithilfe von CVssWriter abgerufen::IsBootableStateBackedUp
-
Festlegen von Anforderern mithilfe von IVssBackupComponents::SetBackupState
-
Abgerufen von Autoren mithilfe von CVssWriter::IsPartialFileSupportEnabled
Allgemeine Informationen zur Wiederherstellung
- Der allgemeine Wiederherstellungstyp (unabhängig davon, ob die Wiederherstellung durch Kopieren oder Importieren erfolgt)
Festlegen durch Anforderungser mithilfe von IVssBackupComponents::SetRestoreState
Abgerufen von Autoren mithilfe von CVssWriter::GetRestoreType
Informationen zu unterstützenden Dateien
- Der Speicherort von Bereichsdateien, die von einer bestimmten Komponente in partiellen Dateivorgängen verwendet werden
Festlegen von Anforderern mithilfe von IVssBackupComponents::SetRangesFilePath
Von Autoren (oder Anforderern) mithilfe von IVssComponent::GetPartialFile abgerufen
Status der Informationen
- Angeben, ob eine der Komponenten eines bestimmten Writers erfolgreich gesichert wurde
Festlegen von Anforderern mithilfe von IVssBackupComponents::SetBackupSucceed
Von Autoren und Anforderern mithilfe von IVssComponent::GetBackupSucceed abgerufen
-
Festlegen von Anforderern mithilfe von IVssBackupComponents::SetFileRestoreStatus
-
Abgerufen von Autoren und Anforderern mithilfe von IVssComponent::GetFileRestoreStatus
Writer-Settable Informationen
- Zusätzliche Sicherungsspezifikation für eine der Komponenten eines bestimmten Writers
Set by writers using IVssComponent::SetBackupMetadata
Von Autoren und Anforderern mithilfe von IVssComponent::GetBackupMetadata abgerufen
-
Set by writers using IVssComponent::SetRestoreMetadata
-
Von Autoren und Anforderern mithilfe von IVssComponent::GetRestoreMetadata abgerufen
-
Set by writers using IVssComponent::SetBackupStamp
-
Von Autoren und Anforderern mithilfe von IVssComponent::GetBackupStamp abgerufen
-
Gespeichert und von Anforderern für eine bestimmte Komponente mithilfe von IVssBackupComponents::SetPreviousBackupStamp
-
Von Autoren und Anforderern mithilfe von IVssComponent::GetPreviousBackupStamp abgerufen
-
Set by writers using IVssComponent::SetPreRestoreFailureMsg or IVssComponent::SetPostRestoreFailureMsg
-
Von Autoren und Anforderern mithilfe von IVssComponent::GetPreRestoreFailureMsg oder IVssComponent::GetPostRestoreFailureMsg abgerufen