IVssComponent::AddDifferencedFilesByLastModifyTime-Methode (vswriter.h)

Die AddDifferencedFilesByLastModifyTime-Methode wird von einem Writer verwendet, um anzugeben, dass ein Dateisatz (eine angegebene Datei oder Dateien) anhand eines Zeitstempels für die letzte Änderung ausgewertet werden soll, um in eine inkrementelle oder differenzielle Sicherung mit Zeitstempeln mithilfe von ganzen Dateien, nicht teildateien, einzubeziehen.

Diese Methode kann von einem Writer nur während eines Sicherungsvorgangs aufgerufen werden.

Syntax

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

Parameter

[in] wszPath

Mit Null beendete Breitzeichenzeichenfolge mit dem Namen des Verzeichnisses oder der Verzeichnishierarchie, die die zu zuordnenden Dateien enthält.

Der Pfad kann Umgebungsvariablen (z. B. %SystemRoot%) enthalten, darf aber keine Wildcardzeichen enthalten.

Es ist nicht erforderlich, dass der Pfad mit einem umgekehrten Schrägstrich ("") endet. Es ist an Anwendungen, die diese Informationen abrufen, um sie zu überprüfen.

[in] wszFilespec

Null-beendete Breitzeichenzeichenfolge, die die Dateispezifikation der zuzuordnenden Dateien enthält.

Eine Dateispezifikation kann keine Verzeichnisspezifikationen enthalten (z. B. keine umgekehrten Schrägstriche), sondern das ? und * Wildcardzeichen.

[in] bRecursive

Ein boolescher Wert, der angibt, ob der vom wszPath-Parameter angegebene Pfad nur ein einzelnes Verzeichnis identifiziert oder ob er eine Hierarchie von Verzeichnissen angibt, die rekursiv durchlaufen werden sollen. Dieser Parameter sollte auf TRUE festgelegt werden, wenn der Pfad als Eine Hierarchie von Verzeichnissen behandelt wird, die rekursiv durchlaufen werden sollen, oder false , wenn dies nicht der Fall ist.

Informationen zum Durchlaufen von eingebundenen Ordnern finden Sie unter Arbeiten mit eingebundenen Ordnern und Analysepunkten.

[in] ftLastModifyTime

Die Writer-Spezifikation des Zeitpunkts der letzten Änderung für die Differenzdateien, ausgedrückt als FILETIME-Struktur .

Der Zeitpunkt der letzten Änderung wird immer in Greenwich Mean Time angegeben.

Rückgabewert

Im Folgenden finden Sie die gültigen Rückgabecodes für diese Methode.

Wert Bedeutung
S_OK
Differenzierte Dateien wurden erfolgreich hinzugefügt.
E_INVALIDARG
Einer der Parameterwerte ist ungültig.
E_OUTOFMEMORY
Der Aufrufer verfügt über nicht genügend Arbeitsspeicher oder andere Systemressourcen.
VSS_E_BAD_STATE
Diese Methode wurde nicht von einem Writer aufgerufen, oder wenn sie von einem Writer aufgerufen wurde, wurde sie entweder während eines Sicherungsvorgangs nicht aufgerufen oder während der Behandlung eines BackupComplete- oder BackupShutdown-Ereignisses aufgerufen.
VSS_E_INVALID_XML_DOCUMENT
Das XML-Dokument ist ungültig. Überprüfen Sie das Ereignisprotokoll auf Details. Weitere Informationen finden Sie unter Ereignis- und Fehlerbehandlung unter VSS.
VSS_E_UNEXPECTED
Unerwarteter Fehler. Der Fehlercode wird in der Fehlerprotokolldatei protokolliert. Weitere Informationen finden Sie unter Ereignis- und Fehlerbehandlung unter VSS.

Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP: Dieser Wert wird erst unter Windows Server 2008 R2 und Windows 7 unterstützt. stattdessen wird E_UNEXPECTED verwendet.

Hinweise

Ein Writer ruft diese Methode auf, um anzugeben, dass bestimmte Dateien in einer Komponente nur gesichert werden sollen, wenn sie seit einer bestimmten Zeit geändert wurden. Weitere Informationen finden Sie unter Sicherung nach Zeitpunkt der letzten Änderung.

Diese Methode kann nur von Writern aufgerufen werden, die das zuletzt geänderte Schema (VSS_BS_LAST_MODIFY) unterstützen, und nur während Sicherungsvorgängen. Autoren, die diese Methode verwenden, müssen das Zeitstempelschema (VSS_BS_TIMESTAMPED) nicht unterstützen.

Dateien, die von AddDifferencedFilesByLastModifyTime hinzugefügt wurden, sollten nicht auch von IVssComponent::AddPartialFile hinzugefügt werden.

Wenn der Sicherungstyp (VSS_BACKUP_TYPE) inkrementell (VSS_BT_INCREMENTAL) ist, müssen Writer, die AddDifferencedFilesByLastModifyTime verwenden, das inkrementelle Schema (VSS_BS_INCREMENTAL) unterstützen. Wenn der Sicherungstyp differenziell ist, muss der Writer das VSS_BS_DIFFERENTIAL Schema unterstützen.

Die AddDifferencedFilesByLastModifyTime-Methode sollte vor dem tatsächlichen Start eines Sicherungsvorgangs aufgerufen werden, in der Regel bei der Behandlung des PostSnapshot-Ereignisses (siehe CVssWriter::OnPostSnapshot).

Wenn der von AddDifferencedFilesByLastModifyTime festgelegte Zeitstempelwert ungleich null ist, muss ein Anforderer diesen Wert unabhängig von seinen eigenen Datensätzen und Dateisysteminformationen berücksichtigen, wenn er bestimmt, ob die differenzierte Datei in eine differenzielle oder inkrementelle Sicherung einbezogen werden soll.

Wenn der von AddDifferencedFilesByLastModifyTime (ftLastModifyTime) festgelegte Zeitstempel null ist, kann der Anforderer Dateisysteminformationen und seine eigenen Datensätze verwenden, um zu bestimmen, ob die unterschiedlichen Dateien in eine differenzielle oder inkrementelle Sicherung einbezogen werden sollen.

Anforderer rufen die Anzahl unterschiedlicher Dateien ab, die von einer Komponente verwaltet werden, indem sie IVssComponent::GetDifferencedFile aufrufen.

Unterschiedliche Dateisätze können eine der folgenden Sein:

  • Ein Member der aktuellen Komponente oder (wenn die Komponente einen Komponentensatz definiert) deren Unterkomponenten
  • Neue Dateien, die zuvor nicht in der Komponente oder unterkomponenten enthalten sind. Mit der AddDifferencedFilesByLastModifyTime-Methode können Writer angeben, dass Dateien, die seit der ursprünglichen Sicherung erstellt wurden, in die Komponente aufgenommen werden sollen, um inkrementelle oder differenzielle Sicherungen zu unterstützen.
Wenn Sie auf Dateien verweisen, die bereits Teil der Komponente sind, Die Kombination aus Pfad, Dateispezifikation und Rekursionsflag (wszPath, wszFileSpec bzw . bRecursive), die addDifferencedFilesByLastModifyTime bereitgestellt wird, muss mit der eines der Dateisätze übereinstimmen, die einer Komponente von IVssCreateWriterMetadata::AddFilesToFileGroup, IVssCreateWriterMetadata::AddDatabaseFiles hinzugefügt wurden, oder IVssCreateWriterMetadata::AddDatabaseLogFiles.

Beim Hinzufügen neuer Dateien zur Komponente AddDifferencedFilesByLastModifyTime sollte der Writer keine Dateien hinzufügen, die von einer anderen Komponente oder einem anderen Writer verwaltet werden.

Es gibt keine Methode in der IVssComponent-Schnittstelle , die das Ändern oder Hinzufügen alternativer Speicherortzuordnungen für neue Dateien ermöglicht, die von AddDifferencedFilesByLastModifyTime hinzugefügt wurden. Wenn der neuen Datei eine alternative Speicherortzuordnung entspricht, wird dieser alternative Speicherort verwendet.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile vswriter.h (enthalten Vss.h, VsWriter.h)
Bibliothek VssApi.lib

Weitere Informationen

CVssWriter::OnPostSnapshot

IVssComponent

IVssComponent::GetDifferencedFile

IVssComponent::GetDifferencedFilesCount

Inkrementelle und differenzielle Sicherungen

VSS_BACKUP_SCHEMA

VSS_BACKUP_TYPE

VSS_FILE_SPEC_BACKUP_TYPE