Metodo IVssBackupComponents::GetWriterComponents (vsbackup.h)

Il metodo GetWriterComponents viene utilizzato per restituire informazioni sui componenti di un determinato writer archiviati nel documento Componenti di backup di un richiedente.

Sintassi

HRESULT GetWriterComponents(
  [in]  UINT                    iWriter,
  [out] IVssWriterComponentsExt **ppWriter
);

Parametri

[in] iWriter

Indice del writer sottoposto a query. È un numero compreso tra 0 e n-1, dove n è il valore restituito da IVssBackupComponents::GetWriterComponentsCount.

[out] ppWriter

Puntatore indiretto doubly a un oggetto interfaccia IVssWriterComponentsExt che riceverà le informazioni sul componente restituite.

Valore restituito

Di seguito sono riportati i codici restituiti validi per questo metodo.

Valore Significato
S_OK
È stato restituito un puntatore a un oggetto interfaccia IVssWriterComponentsExt .
E_INVALIDARG
Uno dei valori dei parametri non è valido.
E_OUTOFMEMORY
Il chiamante non è in memoria o in altre risorse di sistema.
VSS_E_BAD_STATE
L'oggetto componenti di backup non viene inizializzato, questo metodo è stato chiamato durante un'operazione di ripristino oppure questo metodo non è stato chiamato all'interno della sequenza corretta.
VSS_E_OBJECT_NOT_FOUND
La copia shadow specificata non esiste.
VSS_E_UNEXPECTED
Errore imprevisto. Il codice di errore viene registrato nel file di log degli errori. Per altre informazioni, vedere Gestione degli eventi e degli errori in VSS.

Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Questo valore non è supportato fino a Windows Server 2008 R2 e Windows 7. E_UNEXPECTED viene invece usato.

Commenti

Il chiamante di questo metodo deve chiamare IUnknown::Release al termine dell'accesso alle informazioni sul componente.

GetWriterComponents recupera le informazioni sui componenti per un componente archiviato nel documento Componenti di backup da chiamate precedenti a IVssBackupComponents::AddComponent.

Le informazioni nei componenti archiviati nel documento Componenti di backup non sono statiche. Se un writer aggiorna un componente durante un ripristino, tale modifica verrà riflessa nel componente recuperato da GetWriterComponents. In contrasto con le informazioni sui componenti disponibili nell'oggetto IVssWMComponent restituito da IVssExamineWriterMetadata::GetComponent. Tali informazioni sono di sola lettura e provengono dal documento metadati writer di un processo writer.

Il puntatore all'interfaccia IVssWriterComponentsExt restituito nel parametro pWriterComponents non deve essere memorizzato nella cache, perché i metodi IVssBackupComponents seguenti causano la mancata validità del puntatore di interfaccia restituito da GetWriterComponents :

IVssBackupComponents::P repareForBackupIVssBackupComponents::D oSnapshotSetIVssBackupComponents::BackupCompleteIVssBackupComponents::P reIVssBackupComponents::P ostRestore Se si chiama uno di questi metodi dopo aver recuperato un puntatore all'interfaccia IVssWriterComponentsExt chiamando GetWriterComponents, non è possibile riutilizzare tale puntatore, perché non è più valido. È invece necessario chiamare nuovamente GetWriterComponents per recuperare un nuovo puntatore all'interfaccia IVssWriterComponentsExt .

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione vsbackup.h (include VsBackup.h, Vss.h, VsWriter.h)
Libreria VssApi.lib

Vedi anche

IVssBackupComponents

IVssBackupComponents::AddComponent

IVssBackupComponents::GatherWriterMetadata

IVssBackupComponents::GetWriterComponentsCount

IVssBackupComponents::GetWriterMetadata

IVssBackupComponents::P reRestore

IVssExamineWriterMetadata

IVssExamineWriterMetadata::GetComponent

IVssWriterComponents

IVssWriterComponentsExt