VSS_COMPONENTINFO-Struktur (vsbackup.h)

Die VSS_COMPONENTINFO-Struktur enthält Informationen zu einer bestimmten Komponente und wird von der IVssWMComponent-Schnittstelle an die Anforderer zurückgegeben.

Syntax

typedef struct _VSS_COMPONENTINFO {
  VSS_COMPONENT_TYPE type;
  BSTR               bstrLogicalPath;
  BSTR               bstrComponentName;
  BSTR               bstrCaption;
  BYTE               *pbIcon;
  UINT               cbIcon;
  bool               bRestoreMetadata;
  bool               bNotifyOnBackupComplete;
  bool               bSelectable;
  bool               bSelectableForRestore;
  DWORD              dwComponentFlags;
  UINT               cFileCount;
  UINT               cDatabases;
  UINT               cLogFiles;
  UINT               cDependencies;
} VSS_COMPONENTINFO;

Member

type

Komponententyp. Siehe VSS_COMPONENT_TYPE.

bstrLogicalPath

Eine Zeichenfolge, die den logischen Pfad der Komponente enthält.

Ein logischer Pfad kann NULL sein.

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

bstrComponentName

Eine Zeichenfolge, die den Namen der Komponente enthält. Eine Komponentennamenzeichenfolge darf nicht NULL sein.

bstrCaption

Eine Zeichenfolge, die die Beschreibung der Komponente enthält. Eine Untertitel Zeichenfolge kann NULL sein.

pbIcon

Zeiger auf einen Puffer, der die Binärdaten für ein anzeigebares Symbol enthält, das die Komponente darstellt. Der Pufferinhalt sollte das gleiche Format wie die Standardsymboldateien (.ico) verwenden. Die Größe des Puffers in Bytes wird von cbIcon angegeben.

Wenn der Writer, der die Komponente erstellt hat, kein Symbol angegeben hat, ist pbIconNULL.

cbIcon

Die Größe des angezeigten Symbols (pbIcon) in Bytes, das die Komponente darstellt. Wenn pbIconNULL ist, sollte cbIcon null sein.

bRestoreMetadata

Boolescher Wert, der angibt, ob der Wiederherstellung der Komponente private Metadaten zugeordnet sind. Der Boolesche Wert ist true , wenn Metadaten vorhanden sind, und false , wenn es nicht vorhanden ist.

Ein Writer gibt an, ob eine Komponente private Metadaten unterstützt, indem dieser Wert festgelegt wird, wenn eine Komponente mit IVssCreateWriterMetadata::AddComponent hinzugefügt wird. Writer fügen später Wiederherstellungsmetadaten mit IVssComponent::SetRestoreMetadata hinzu. Anforderer rufen die Informationen mithilfe von IVssComponent::GetRestoreMetadata ab.

bNotifyOnBackupComplete

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

bSelectable

Boolescher Wert, der (für Komponentenmodusvorgänge) angibt, ob die Komponente für die Sicherung ausgewählt werden kann. Der Wert von bSelectable hilft zu bestimmen, ob ein Anforderer die Möglichkeit hat, eine bestimmte Komponente in Sicherungsvorgänge ein- oder auszuschließen. Der Boolesche Wert ist true , wenn die Komponente für die Sicherung ausgewählt werden kann, und false , wenn dies nicht der Fall ist.

Es gibt keinen Standardwert für die Auswählbarkeit einer Komponente für die Sicherung. Ein Writer muss den Wert immer explizit festlegen, wenn er die Komponente mit IVssCreateWriterMetadata::AddComponent zu seinem Writer-Metadatendokument hinzufügt.

Darüber hinaus bestimmen der Wert von bSelectable, der logische Pfad der Komponente und die Beziehung der Komponente zu anderen Komponenten, wie in diesem Pfad ausgedrückt, wann und wie eine Komponente in einen Sicherungsvorgang einbezogen wird:

  • Für eine nicht für sicherungsfähige Komponente (bSelectable ist false) ohne Auswahl für Sicherungs-Vorgänger in der Hierarchie des logischen Pfads ist die Aufnahme in den Sicherungssatz immer obligatorisch und immer implizit. Ein Anforderer fügt die Komponente explizit dem Sicherungssatz im Dokument Sicherungskomponenten mit IVssBackupComponents::AddComponent hinzu.
  • Für eine auswählbare Sicherungskomponente (bSelectable ist true), ohne dass für Sicherungs-Vorgänger in der Hierarchie ihrer logischen Pfade ausgewählt werden kann, ist die Aufnahme in den Sicherungssatz immer optional und immer explizit. Ein Anforderer fügt die Komponente explizit dem Sicherungssatz im Dokument Sicherungskomponenten mit IVssBackupComponents::AddComponent hinzu.

    Wenn eine solche Komponente als Vorgänger im logischen Pfad anderer Komponenten enthalten ist, sowohl der komponenten, die für die Sicherung auswählbar sind, als auch derjenigen, die dies nicht sind, definiert sie einen Komponentensatz, der diese anderen Komponenten als Unterkomponenten enthält. Wenn eine für die Sicherung auswählbare Komponente explizit in einer Sicherung enthalten ist, werden diese Unterkomponenten implizit in die Sicherung einbezogen.

  • Für eine nicht auswählbare Sicherungskomponente (bSelectable ist false), die in der Hierarchie ihrer logischen Pfade einen für Sicherungs-Vorgänger auswählbaren hat (und daher Teil eines komponentensatzes ist, der von diesem Vorgänger definiert wird), ist die Aufnahme in den Sicherungssatz immer implizit und hängt von der Aufnahme eines auswählbaren Sicherungs-Vorgängers ab. Ein Anforderer fügt die Komponente niemals explizit dem Sicherungssatz im Dokument Sicherungskomponenten hinzu. stattdessen wird dem Dokument mithilfe von IVssBackupComponents::AddComponent der für Sicherung auswählbare Vorgänger hinzugefügt.
  • Für eine auswählbare Sicherungskomponente (bSelectable ist true), die in der Hierarchie ihrer logischen Pfade einen für sicherungsfähigen Vorgänger auswählbar hat (und daher Teil eines von diesem Vorgänger definierten Komponentensatzes ist), kann die Aufnahme in den Sicherungssatz entweder optional und explizit sein, oder wenn die Komponente nicht explizit ausgewählt wird, kann ihre Aufnahme implizit sein und von der Aufnahme eines für sicherungsvorgänger auswählbaren Elements abhängig sein. Wenn die Aufnahme der Komponente explizit ist, fügt ein Anforderer die Komponenten explizit dem Sicherungssatz im Dokument Sicherungskomponenten mit IVssBackupComponents::AddComponent hinzu.

    Wenn die Aufnahme implizit ist, fügt ein Anforderer diese Komponenten nicht zu einem Sicherungssatz im Dokument Sicherungskomponenten hinzu.

    Wenn die Aufnahme der Komponente explizit ist und die Komponente einen Komponentensatz definiert, werden die Member dieses Komponentensatzes implizit ausgewählt.

    Ein Writer legt die Auswählbarkeit einer Komponente für die Sicherung (bSelectable) fest, wenn die Komponente dem Writer-Metadatendokument mithilfe von IVssCreateWriterMetadata::AddComponent hinzugefügt wird.

    Weitere Informationen finden Sie unter Arbeiten mit Auswählbarkeit und logischen Pfaden .

bSelectableForRestore

Boolescher Wert, der (für Komponentenmodusvorgänge) angibt, ob die Komponente für die Wiederherstellung ausgewählt werden kann. Mit bSelectableForRestore kann der Anforderer bestimmen, ob diese Komponente einzeln für die Wiederherstellung ausgewählt werden kann, wenn sie zuvor implizit in die Sicherung eingeschlossen wurde. Der Boolesche Wert ist true , wenn die Komponente für die Wiederherstellung ausgewählt werden kann, und false , wenn dies nicht der Fall ist.

Standardmäßig ist die Auswählbarkeit einer Komponente für die Wiederherstellung false. Ein Writer kann diese Standardeinstellung überschreiben, wenn er die Komponente mit IVssCreateWriterMetadata::AddComponent zu seinem Writer-Metadatendokument hinzufügt.

Wenn dem Sicherungsdokument explizit eine Komponente hinzugefügt wird (siehe explizite Komponenteneinschluss), kann sie immer einzeln für die Wiederherstellung ausgewählt werden. dieses Flag hat also keine Bedeutung. Wenn dem Sicherungsdokument implizit eine Komponente hinzugefügt wird, bestimmt das bSelectableForRestore-Flag , ob die Komponente mithilfe von IVssBackupComponents::AddRestoreSubcomponent einzeln wiederhergestellt werden kann.

Weitere Informationen finden Sie unter Arbeiten mit Auswählbarkeit und logischen Pfaden .

dwComponentFlags

Eine Bitmaske (oder bitweise OR) von Werten der VSS_COMPONENT_FLAGS-Enumeration , die die Von dieser Komponente unterstützten Features angibt.

Windows Server 2003 und Windows XP: Vor Windows Server 2003 mit SP1 ist dieses Mitglied für die Systemverwendung reserviert.

cFileCount

Wenn die Komponente eine Dateigruppe ist, die Anzahl der Dateideskriptoren für Dateien in der Gruppe. Andernfalls ist dieser Wert null.

cDatabases

Wenn die Komponente eine Datenbank ist, die Anzahl der Datenbankdateideskriptoren. Andernfalls ist dieser Wert null.

cLogFiles

Wenn die Komponente eine Datenbank ist, die Anzahl der Datenbankprotokolldateideskriptoren. Andernfalls ist der Wert dieses Parameters null.

cDependencies

Die Anzahl der expliziten Writer-Komponentenabhängigkeiten der aktuellen Komponente. Dieser Wert wird erhöht, wenn IVssCreateWriterMetadata::AddComponentDependency von einem Writer aufgerufen wird.

Hinweise

Um VSS_COMPONENTINFO Objekt für eine bestimmte Komponente abzurufen, muss ein Anforderer zuerst das entsprechende IVssWMComponent-Objekt über einen Aufruf von IVssExamineWriterMetadata::GetComponent abrufen. Ein Aufruf von IVssWMComponent::GetComponentInfo ordnet dann eine VSS_COMPONENTINFO-Struktur zu und gibt sie zurück.

Da VSS_COMPONENTINFO von IVssWMComponent::GetComponentInfo zugeordnet und zurückgegeben wird, sollte ein Anforderer ein VSS_COMPONENTINFO-Objekt nicht direkt freigeben, sondern IVssWMComponent::FreeComponentInfo verwenden.

Anforderungen

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

Weitere Informationen

IVssCreateWriterMetadata::AddComponent

IVssExamineWriterMetadata

IVssExamineWriterMetadata::GetComponent

IVssWMComponent

IVssWMComponent::FreeComponentInfo

IVssWMComponent::GetComponentInfo

VSS_COMPONENT_TYPE