Поделиться через


Метод CVssWriter::OnIdentify (vswriter.h)

Метод OnIdentify вызывается модулем записи после получения события Identify .

OnIdentify — это виртуальный метод. Он реализуется базовым классом CVssWriter , но может быть переопределен производными классами.

Синтаксис

bool OnIdentify(
  [in] IVssCreateWriterMetadata *pMetadata
);

Параметры

[in] pMetadata

Указатель на объект IVssCreateWriterMetadata , используемый для создания метаданных модуля записи.

Возвращаемое значение

Как реализовано базовым классом, OnIdentify всегда возвращает значение true.

Любая другая реализация этого метода должна возвращать значение true , за исключением случаев неустранимой ошибки. При возникновении неустранимой ошибки метод должен возвращать значение false.

Во всех случаях, когда происходит сбой, включая некритические ошибки, метод должен записывать подробную запись в журнал событий, чтобы сообщить точную причину сбоя.

Комментарии

Реализация этого метода по умолчанию базовым классом CVssWriter возвращает значение true без выполнения каких-либо других операций.

Модули записи никогда не должны вызывать исключение из этого метода или любого другого метода обратного вызова CVssWriter(Ex)::OnXxx .

Средства записи никогда не должны вызывать метод CVssWriter::SetWriterFailure из метода OnIdentify или CVssWriterEx::OnIdentifyEx .

Если этот метод вызывает метод CVssWriterEx2::GetSessionId , он должен делать это в том же потоке, который вызвал этот метод. Дополнительные сведения см. в разделе Обработка событий записи.

В ответ на событие Identify, созданное другим приложением, модуль записи использует обработчик OnIdentify для создания документа метаданных модуля записи, содержащего сведения о компонентах, которыми он управляет с помощью интерфейса IVssCreateWriterMetadata .

Затем приложение, создающее событие Identify, извлекает документ метаданных модуля записи и проверяет сведения о компоненте модуля записи с помощью интерфейса IVssExamineWriterMetadata .

Событие Identify требуется перед событиями, составляющими последовательность резервного копирования или восстановления. Поэтому OnIdentify , возможно, чаще всего вызывается для обработки события Identify в ответ на вызов запрашивающего объекта IVssBackupComponents::GatherWriterMetadata в рамках операции резервного копирования или восстановления.

Однако событие Identify само по себе не является частью последовательности событий, составляющих резервное копирование или восстановление, и служба VSS не препятствует его генерации, даже когда выполняется последовательность резервного копирования или восстановления. Например, приложения для управления VSS используют событие Identify для определения и отображения состояния модулей записи в системе.

В этом случае авторы никогда не должны использовать свою реализацию OnIdentify следующими способами:

  • В качестве начала обработки резервного копирования или восстановления
  • Установка или сохранение сведений о состоянии модуля записи
Дополнительные сведения о взаимодействии записи с событиями см. в разделе Обработка событий записи.

Жизненный цикл объекта IVssCreateWriterMetadata , передаваемого в OnIdentify , управляется инфраструктурой VSS.

Требования

Требование Значение
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header vswriter.h (включая Vss.h, VsWriter.h)
Библиотека VssApi.lib

См. также раздел

CVssWriter

IVssBackupComponents::GatherWriterMetadata

IVssCreateWriterMetadata