CVssWriterEx::OnIdentifyEx-Methode (vswriter.h)
Gibt einen Zeiger auf ein IVssCreateWriterMetadataEx-Objekt zurück.
OnIdentifyEx ist eine virtuelle Methode. Sie wird von der CVssWriterEx-Basisklasse implementiert, kann aber von abgeleiteten Klassen überschrieben werden.
Syntax
bool OnIdentifyEx(
[in] IVssCreateWriterMetadataEx *pMetadata
);
Parameter
[in] pMetadata
Ein Zeiger auf ein IVssCreateWriterMetadataEx-Objekt .
Rückgabewert
Wie von der Basisklasse implementiert, gibt OnIdentifyEx immer true zurück.
Jede andere Implementierung dieser Methode muss true zurückgeben, außer im Falle eines schwerwiegenden Fehlers. Wenn ein schwerwiegender Fehler auftritt, sollte die Methode false zurückgeben.
In allen Fällen, in dem ein Fehler auftritt, einschließlich nicht schwerwiegender Fehler, sollte die Methode einen detaillierten Eintrag in das Ereignisprotokoll schreiben, um den genauen Grund für den Fehler zu melden.
Hinweise
Die OnIdentifyEx-Methode ist identisch mit der OnIdentify-Methode , mit der Ausnahme, dass sie einen IVssCreateWriterMetadataEx-Schnittstellenzeiger anstelle eines IVssCreateWriterMetadata-Schnittstellenzeigers im pMetadata-Parameter zurückgibt. Ein Writer kann OnIdentify oder OnIdentifyEx außer Kraft setzen, aber nicht beides.
Writer sollten niemals eine Ausnahme von dieser Methode oder einer anderen CVssWriter(Ex)::OnXxx-Rückrufmethode auslösen.
Writer sollten niemals die CVssWriter::SetWriterFailure-Methode aus der OnIdentify- oder OnIdentifyEx-Methode aufrufen.
Wenn diese Methode die CVssWriterEx2::GetSessionId-Methode aufruft, muss sie dies im selben Thread tun, der diese Methode aufgerufen hat. Weitere Informationen finden Sie unter Writer-Ereignisbehandlung.
Als Reaktion auf ein Identify-Ereignis , das von einer anderen Anwendung generiert wird, ruft ein Writer OnIdentifyEx auf, um ein Writer-Metadatendokument zu erstellen, das Informationen zu den Komponenten enthält, die er mithilfe der IVssCreateWriterMetadataEx-Schnittstelle verwaltet.
Die Anwendung, die das Identify-Ereignis generiert hat, ruft dann das Writer-Metadatendokument ab und untersucht die Komponenteninformationen des Writers mithilfe der IVssExamineWriterMetadata-Schnittstelle .
Vor den Ereignissen, aus denen eine Sicherungs- oder Wiederherstellungssequenz besteht, ist ein Identify-Ereignis erforderlich. Daher wird OnIdentifyEx in der Regel aufgerufen, um ein Identify-Ereignis als Reaktion auf den Aufruf eines Anforderers an IVssBackupComponents::GatherWriterMetadata im Rahmen eines Sicherungs- oder Wiederherstellungsvorgangs zu behandeln.
Ein Identify-Ereignis selbst ist jedoch nicht Teil der Sequenz von Ereignissen, aus denen eine Sicherungs- oder Wiederherstellungssequenz besteht, und der VSS-Dienst verhindert nicht, dass Identifizieren von Ereignissen generiert wird, auch wenn eine Sicherungs- oder Wiederherstellungssequenz ausgeführt wird. Beispielsweise verwenden VSS-Verwaltungsanwendungen das Identify-Ereignis , um den Zustand der Writer im System zu bestimmen und anzuzeigen.
Aus diesem Grund sollten Autoren ihre Implementierung von OnIdentifyEx niemals auf eine der folgenden Arten verwenden:
- Als Beginn der Verarbeitung einer Sicherungs- oder Wiederherstellungssequenz
- So legen Sie Informationen über den Zustand des Writers fest oder verwalten sie
Während der Ereignisse PrepareForBackup, PrepareForSnapshot und PostSnapshot kann ein Writer die GetIdentifyInformation-Methode verwenden, um die Metadaten abzurufen, die zuvor von der OnIdentifyEx-Methode des Writers gemeldet wurden.
Der Lebenszyklus des IVssCreateWriterMetadataEx-Objekts , auf das der pMetadata-Parameter verweist, wird von der VSS-Infrastruktur verwaltet.
Anforderungen
Unterstützte Mindestversion (Client) | Windows Vista [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | vswriter.h (enthalten Vss.h, VsWriter.h) |
Bibliothek | VssApi.lib |