Share via


Metodo IVssComponent::GetPartialFile (vswriter.h)

Il metodo GetPartialFile restituisce informazioni su un file parziale associato a questo componente.

Sintassi

HRESULT GetPartialFile(
  [in]  UINT iPartialFile,
  [out] BSTR *pbstrPath,
  [out] BSTR *pbstrFilename,
  [out] BSTR *pbstrRange,
  [out] BSTR *pbstrMetadata
);

Parametri

[in] iPartialFile

Numero di indice del file parziale. Il valore di questo parametro è un numero intero compreso tra 0 e n-1 inclusi, dove n è il numero totale di file parziali associati a un determinato componente. Il valore di n viene restituito da IVssComponent::GetPartialFileCount.

[out] pbstrPath

Puntatore a una stringa contenente il percorso del file parziale.

Gli utenti di questo metodo devono verificare se questo percorso termina con una barra rovesciata ("").

[out] pbstrFilename

Puntatore a una stringa contenente il nome del file parziale.

[out] pbstrRange

Puntatore a una stringa contenente un elenco di offset e lunghezze di file che costituiscono l'intervallo di supporto file parziale (le sezioni del file di cui è stato eseguito il backup) o il nome di un file contenente tale elenco.

[out] pbstrMetadata

Puntatore a una stringa contenente tutti i metadati aggiuntivi richiesti da un writer per convalidare un'operazione di ripristino parziale dei file. Le informazioni contenute in questa stringa di metadati saranno opache per i richiedenti.

Non sono necessari metadati aggiuntivi, quindi pbstrMetadata può anche essere vuoto (lunghezza zero).

Valore restituito

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

Valore Significato
S_OK
È stato restituito correttamente il valore dell'attributo.
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
Il chiamante non è nello stato corretto (backup o ripristino) per l'operazione.
VSS_E_INVALID_XML_DOCUMENT
Documento XML non valido. Per informazioni dettagliate, vedere il registro eventi. Per altre informazioni, vedere Gestione degli eventi e degli errori in VSS.
VSS_E_OBJECT_NOT_FOUND
L'elemento specificato non è stato trovato.

Commenti

Il chiamante deve liberare la memoria contenuta nei parametri pbstrPath, pbstrFilename, pbstrRange e pbstrMetadata chiamando SysFreeString.

Un intervallo indica una sottosezione di un determinato file di cui eseguire il backup, indipendentemente dal resto del file.

La sintassi dell'elenco di intervalli (pbstrRanges) è quella di un elenco delimitato da virgole del formato offset1:length1, offset2:length2, in cui ogni offset e lunghezza è un intero a 64 bit specificando rispettivamente un offset di byte e una lunghezza in byte. L'offset e la lunghezza possono essere espressi come valori esadecimali o decimali.

Se pbstrRanges fa riferimento a un file contenente tutti gli offset e le lunghezze (un file di intervalli), pbstrRanges deve contenere il percorso completo del file.

Se wszRange fa riferimento a un file contenente tutti gli offset e le lunghezze (un file di intervalli), wszRange deve contenere il percorso completo del file.

Un file di intervalli deve essere un file binario con il formato seguente:

  1. Intero a 64 bit che indica il numero di intervalli di file distinti di cui è necessario eseguire il backup.
  2. Ogni intervallo espresso come coppia di interi a 64 bit: l'offset nel file di cui viene eseguito il backup, in byte e la lunghezza dei dati a partire da tale offset di cui eseguire il backup.
È necessario eseguire il backup di un file di intervalli insieme al file parziale e in genere viene ripristinato nello stesso percorso da cui è stato eseguito il backup.

Tuttavia, il percorso in cui viene ripristinato un file di intervalli potrebbe essere modificato dal richiedente, che usa IVssBackupComponents::SetRangesFilePath per indicare questo e per aggiornare il documento dei componenti di backup in modo che pbstrRanges indichi il file di intervalli corretto.

Un richiedente userà le informazioni sugli intervalli restituite da GetPartialFile per ripristinare le sezioni di cui è stato eseguito il backup nel percorso appropriato all'interno della copia del file su disco in fase di ripristino.

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 vswriter.h (include Vss.h, VsWriter.h)
Libreria VssApi.lib

Vedi anche

IVssBackupComponents::SetRangesFilePath

IVssComponent

IVssComponent::AddPartialFile

IVssComponent::GetPartialFileCount