Contenuto del documento dei componenti di backup
Il documento dei componenti di backup viene gestito dalle istanze dell'interfacciaIVssBackupComponents. Questa interfaccia contiene anche numerosi metodi per controllare le operazioni di backup, la modifica delle copie shadow e l'esecuzione di query sullo stato del sistema. Tuttavia, non tutte le informazioni del documento sono accessibili direttamente tramite questa interfaccia.
Il documento Componenti di backup è costituito da diversi set di dati:
- Informazioni sui componenti inclusi in modo esplicito in un'operazione di backup o ripristino
- Rappresentazione delle informazioni sul componente archiviato e sul writer
- Informazioni sullo stato sull'operazione di backup/ripristino
Mentre le informazioni sul componente sono disponibili sia per il richiedente che per il writer, solo il writer ha accesso alle informazioni sullo stato.
Informazioni sull'inclusione dei componenti
Il documento Componenti di backup contiene un elenco di tali componenti inclusi in modo esplicito nel backup e nel ripristino da parte del richiedente. L'elenco contiene quanto segue:
Inclusi in modo esplicito componenti selezionabili.
L'inclusione di questi file nelle operazioni di backup è indicata da IVssBackupComponents::AddComponent e nelle operazioni di ripristino da IVssBackupComponents::SetSelectedForRestore.
Non selezionabile per i sottocomponenti di backup senza un predecessore selezionabile per il componente di backup.
Tutti questi componenti devono essere inclusi se tutti i componenti del writer devono essere inclusi nell'operazione. L'inclusione di questi file nelle operazioni di backup è indicata da IVssBackupComponents::AddComponent e nelle operazioni di ripristino da IVssBackupComponents::SetSelectedForRestore.
I componenti aggiunti in modo implicito al backup (sottocomponenti) che sono selezionabili per il ripristino e vengono aggiunti in modo esplicito al ripristino.
Questi componenti possono essere selezionabili o non selezionabili, ma hanno un predecessore selezionabile usato per selezionarli in modo implicito per il backup. Vengono aggiunti al documento dei componenti di backup IVssBackupComponents::AddRestoreSubcomponent.
Le identità dei componenti inclusi in modo implicito nel ripristino non vengono archiviate nel documento Componenti di backup.
VsS ha accesso alle informazioni sull'inclusione dei componenti: i writer senza componenti inclusi in modo esplicito in un ripristino o backup non ricevono eventi VSS dopo la generazione di eventi PrepareForBackup o PreRestore.
I writer non possono eseguire direttamente query su queste informazioni. Questa non è una limitazione significativa perché, per impostazione predefinita, i singoli writer vss non devono richiedere informazioni dettagliate sullo stato di altri writer nel sistema e, come indicato in precedenza, quelli senza componenti inclusi non dovranno partecipare all'operazione vss.
Un richiedente può determinare quali componenti sono stati inclusi in modo esplicito in un'operazione.
Il metodo IVssBackupComponents::GetWriterComponentsCount restituisce il numero di writer con informazioni sul componente archiviate nel documento componenti di backup e non il numero di componenti nel documento.
Il richiedente indicizza le informazioni sul writer archiviato usando IVssBackupComponents::GetWriterComponents, che restituisce istanze dell'interfaccia IVssWriterComponentsExt. L'interfaccia IVssWriterComponentsExt consente al richiedente di ottenere la classe writer e writer di writer partecipanti, nonché di accedere alle informazioni su tali componenti archiviati nel documento componenti di backup.
Informazioni sui componenti inclusi
Rappresentazione dei dati dei componenti di backup del documento (che non include informazioni sul percorso e sulle specifiche dei file), a cui si accede tramite istanze dell'interfaccia IVssComponent.
I richiedenti e i writer ottengono l'accesso alle istanze dell'interfaccia IVssComponent in modi diversi.
Un richiedente esamina i dati dei componenti in base al writer usando istanze del IVssWriterComponentsExt interfaccia restituita da IVssBackupComponents::GetWriterComponents.
Oltre alle informazioni di identificazione del writer, l'interfaccia IVssWriterComponentsExt fornisce una matrice di istanze dell'interfacciaIVssComponent, una per ognuno dei componenti inclusi selezionati.
Come indicato in ciclo di vita dei documenti dei componenti di backup, i writer possono accedere alle stesse informazioni tramite l'IVssWriterComponents interfaccia durante la gestione dell'evento PrepareForBackup, PrepareForSnapshot, PostSnapshot, BackupComplete, PreRestore o PostRestore.
IVssComponent consente ai writer e ai richiedenti di ottenere le informazioni seguenti:
- Nome, tipo e percorso logico di un componente (GetComponentName, GetComponentType, GetLogicalPath)
- Come ripristinare un componente come indicato daldi destinazione di ripristino (IVssComponent::GetRestoreTarget)
- Se è stato usato un percorso alternativo nel ripristino di un file (GetAlternateLocationMapping, GetAlternateLocationMappingCount)
- Nuove informazioni di destinazione, se presenti (GetNewTarget, GetNewTargetCount)
- Messaggi di errore di pre-ripristino e post-ripristino (GetPreRestoreFailureMsg, GetPostRestoreFailureMsg)
- Se è stata selezionata una selezionabile per il componente di backup che definisce un set di componenti per il ripristino (IsSelectedForRestore)
- Se un backup o un ripristino è riuscito (GetBackupSucceededed, GetFileRestoreStatus)
- Qualsiasi opzione di backup o ripristino specifica del writer impostata da IVssBackupComponents::SetBackupOptions o IVssBackupComponents::SetRestoreOptions (GetBackupOptions, GetRestoreOptions)
- Qualsiasi backup o ripristino dei metadati specifici del writer (GetBackupMetadata), GetRestoreMetadata)
- Informazioni sul timestamp (GetBackupStamp, GetPreviousBackupStamp)
- Informazioni sui sottocomponenti di backup inclusi in modo esplicito in un ripristino (GetRestoreSubcomponent, GetRestoreSubcomponentCount)
A differenza dei richiedenti, i writer possono modificare determinate informazioni nel documento dei componenti di backup tramite l'interfacciaIVssComponent:
- Come ripristinare un componente come indicato dalla destinazione di ripristino (IVssComponent::SetRestoreTarget)
- Metadati di backup e ripristino specifici del writer (IVssComponent::SetBackupMetadata, IVssComponent::SetRestoreMetadata)
- Informazioni sul timestamp (SetBackupStamp)
- Messaggi di errore di pre-ripristino e post-ripristino (SetPreRestoreFailureMsg, SetPostRestoreFailureMsg)
Informazioni sullo stato del richiedente
I richiedenti inseriscono informazioni sullo stato di un'operazione di backup o ripristino nel documento Componenti di backup usando l'interfacciaIVssBackupComponents. Le applicazioni writer possono eseguire query su queste informazioni tramite la classeCVssWriter.
Le informazioni sullo stato archiviate nel documento Componenti di backup includono quanto segue:
Informazioni generali sul backup
- Tipo di backup complessivo (incrementale, differenziale o completo)
Impostata dai richiedenti usando IVssBackupComponents::SetBackupState
Recuperato dai writer tramite CVssWriter::GetBackupType
-
Impostata dai richiedenti usando IVssBackupComponents::SetBackupState
-
Recuperato dai writer tramite CVssWriter::AreComponentsSelected
-
Impostata dai richiedenti usando IVssBackupComponents::SetBackupState
-
Recuperato dai writer tramite CVssWriter::IsBootableStateBackedUp
-
Impostata dai richiedenti usando IVssBackupComponents::SetBackupState
-
Recuperato dai writer con CVssWriter::IsPartialFileSupportEnabled
Informazioni generali sul ripristino
- Tipo di ripristino complessivo (se il ripristino è in base alla copia o all'importazione)
Impostata dai richiedenti usando IVssBackupComponents::SetRestoreState
Recuperato dai writer tramite CVssWriter::GetRestoreType
Informazioni sui file di supporto
- Posizione dei file di intervalli usati da un componente specifico nelle operazioni di file parziali
Impostata dai richiedenti usando IVssBackupComponents::SetRangesFilePath
Recuperato da writer (o richiedenti) usando IVssComponent::GetPartialFile
Stato delle informazioni
- Indicare se è stato eseguito correttamente il backup di uno dei componenti di un determinato writer
Impostata dai richiedenti usando IVssBackupComponents::SetBackupSucceeded
Recuperato da writer e richiedenti usando IVssComponent::GetBackupSucceeded
-
Impostata dai richiedenti usando IVssBackupComponents::SetFileRestoreStatus
-
Recuperato da writer e richiedente usando IVssComponent::GetFileRestoreStatus
informazioni Writer-Settable
- Specifica di backup aggiuntiva per uno dei componenti di un determinato writer
Impostare per writer usando IVssComponent::SetBackupMetadata
Recuperato da writer e richiedenti usando IVssComponent::GetBackupMetadata
-
Impostare per writer usando IVssComponent::SetRestoreMetadata
-
Recuperato da writer e richiedenti usando IVssComponent::GetRestoreMetadata
-
Impostata dai writer usando IVssComponent::SetBackupStamp
-
Recuperato da writer e richiedenti usando IVssComponent::GetBackupStamp
-
Archiviato e impostato dai richiedenti per un componente specifico usando IVssBackupComponents::SetPreviousBackupStamp
-
Recuperato da writer e richiedenti usando IVssComponent::GetPreviousBackupStamp
-
Impostata dai writer usando IVssComponent::SetPreRestoreFailureMsg o IVssComponent::SetPostRestoreFailureMsg
-
Recuperato da writer e richiedenti tramite IVssComponent::GetPreRestoreFailureMsg o IVssComponent::GetPostRestoreFailureMsg