Metodo IVssComponent::AddDifferencedFilesByLastModifyTime (vswriter.h)

Il metodo AddDifferencedFilesByLastModifyTime viene usato da un writer per indicare che un set di file (un file o file specificato) deve essere valutato rispetto a un timestamp di ultima modifica per l'inclusione in un backup incrementale o differenziale timestampato usando interi file, non file parziali.

Questo metodo può essere chiamato da un writer solo durante un'operazione di backup.

Sintassi

HRESULT AddDifferencedFilesByLastModifyTime(
  [in] LPCWSTR  wszPath,
  [in] LPCWSTR  wszFilespec,
  [in] BOOL     bRecursive,
  [in] FILETIME ftLastModifyTime
);

Parametri

[in] wszPath

Stringa di caratteri wide con terminazione null contenente il nome della directory o della gerarchia di directory contenente i file da eseguire il mapping.

Il percorso può contenere variabili di ambiente ,ad esempio %SystemRoot%) ma non può contenere caratteri jolly.

Non è necessario che il percorso termina con una barra rovesciata (""). Si tratta di applicazioni che recuperano queste informazioni da controllare.

[in] wszFilespec

Stringa di caratteri wide con terminazione null contenente la specifica dei file da eseguire il mapping.

Una specifica di file non può contenere specifiche di directory (ad esempio, nessuna barra rovesciata) ma può contenere ? e * caratteri jolly.

[in] bRecursive

Valore booleano che specifica se il percorso specificato dal parametro wszPath identifica solo una singola directory o se indica una gerarchia di directory da attraversare in modo ricorsivo. Questo parametro deve essere impostato su true se il percorso viene considerato come una gerarchia di directory da attraversare in modo ricorsivo o false in caso contrario.

Per informazioni sull'attraversamento di cartelle montate, vedere Uso di cartelle montate e punti di reparse.

[in] ftLastModifyTime

Specifica del writer dell'ora dell'ultima modifica per i file di differenza, espressa come struttura FILETIME .

L'ultima modifica viene sempre data in Greenwich Mean Time.

Valore restituito

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

Valore Significato
S_OK
Sono stati aggiunti file con differenze.
E_INVALIDARG
Uno dei valori dei parametri non è valido.
E_OUTOFMEMORY
Il chiamante non è in memoria o altre risorse di sistema.
VSS_E_BAD_STATE
Questo metodo non è stato chiamato da un writer o, se chiamato da un writer, non è stato chiamato durante un'operazione di backup o è stato chiamato durante la gestione di un evento BackupComplete o BackupShutdown .
VSS_E_INVALID_XML_DOCUMENT
Il documento XML non è valido. Controllare il registro eventi per informazioni dettagliate. Per altre informazioni, vedere Gestione degli eventi e degli errori in VSS.
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

Un writer chiama questo metodo per specificare che alcuni file in un componente devono essere sottoposti a backup solo se sono stati modificati da un determinato momento. Per altre informazioni, vedere Backup by Last Modify Time.

Questo metodo può essere chiamato solo dai writer che supportano l'ultimo schema modificato (VSS_BS_LAST_MODIFY) e solo durante le operazioni di backup. I writer che usano questo metodo non devono supportare lo schema timestamp (VSS_BS_TIMESTAMPED).

I file aggiunti da AddDifferencedFilesByLastModifyTime non devono essere aggiunti anche da IVssComponent::AddPartialFile.

Se il tipo di backup (VSS_BACKUP_TYPE) è incrementale (VSS_BT_INCREMENTAL), i writer che usano AddDifferencedFilesByLastModifyTime devono supportare lo schema incrementale (VSS_BS_INCREMENTAL). Se il tipo di backup è differenziale, il writer deve supportare lo schema VSS_BS_DIFFERENTIAL .

Il metodo AddDifferencedFilesByLastModifyTime deve essere chiamato prima dell'inizio effettivo di un'operazione di backup, in genere durante la gestione dell'evento PostSnapshot (vedere CVssWriter::OnPostSnapshot).

Se il valore timestamp impostato da AddDifferencedFilesByLastModifyTime è diverso da zero, un richiedente deve rispettare questo valore indipendentemente dai propri record e informazioni sul file system quando si determina se il file differenzato deve essere incluso in un backup differenziale o incrementale.

Se il timestamp impostato da AddDifferencedFilesByLastModifyTime (ftLastModifyTime) è zero, il richiedente può usare le informazioni sul file system e i relativi record per determinare se i file con differenza devono essere inclusi in un backup differenziale o incrementale.

I richiedenti recuperano il numero di file con differenza gestiti da un componente chiamando IVssComponent::GetDifferencedFile.

I set di file con differenza possono essere uno dei seguenti:

  • Membro del componente corrente o (se il componente definisce un set di componenti) i relativi sottocomponenti
  • Nuovi file non inclusi in precedenza nel componente o nei sottocomponenti. Il metodo AddDifferencedFilesByLastModifyTime consente ai writer di indicare che i file creati dal backup originale devono essere inclusi nel componente per supportare backup incrementali o differenziali.
Quando si fa riferimento a file che fanno già parte del componente, la combinazione di percorso, specifica file e flag di ricorsione (wszPath, wszFileSpec e bRecursive, rispettivamente) fornito a AddDifferencedFilesByLastModifyTime per essere mappato deve corrispondere a quello di uno dei set di file aggiunti a un componente da IVssCreateWriterMetadata::AddFilesToFileGroup, IVssCreateWriterMetadata::AddDatabaseFiles o IVssCreateWriterMetadata::AddDatabaseLogFiles.

Quando si aggiungono nuovi file al componente, AddDifferencedFilesByLastModifyTime, il writer non deve aggiungere file gestiti da un altro componente o writer.

Non esiste alcun metodo nell'interfaccia IVssComponent che consente di modificare o aggiungere mapping di percorso alternativi per i nuovi file aggiunti da AddDifferencedFilesByLastModifyTime. Se un mapping di percorso alternativo corrisponde al nuovo file, verrà usato tale percorso alternativo.

Requisiti

   
Client minimo supportato Windows Vista [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

CVssWriter::OnPostSnapshot

IVssComponent

IVssComponent::GetDifferencedFile

IVssComponent::GetDifferencedFilesCount

Backup incrementali e differenziali

VSS_BACKUP_SCHEMA

VSS_BACKUP_TYPE

VSS_FILE_SPEC_BACKUP_TYPE