Метод CVssWriter::OnAbort (vswriter.h)
Метод OnAbort вызывается модулем записи после события Прерывания , выданного VSS, указывающего на преждевременное завершение операции теневого копирования. Модуль записи использует этот метод для очистки от попытки участвовать в этой операции.
OnAbort — это чисто виртуальный метод. Он не реализуется базовым классом CVssWriter и должен быть реализован производными классами.
Синтаксис
bool OnAbort();
Возвращаемое значение
Реализация этого метода должна возвращать значение true , за исключением случаев неустранимой ошибки. При возникновении неустранимой ошибки метод должен вызвать метод CVssWriter::SetWriterFailure , чтобы предоставить описание сбоя, прежде чем возвращать значение false. Если возникает некритичная ошибка, метод должен по-прежнему вызывать SetWriterFailure , но возвращать значение true. Если ошибка вызвана временной проблемой, метод должен указать VSS_E_WRITERERROR_RETRYABLE в вызове SetWriterFailure.
Во всех случаях, когда происходит сбой, метод должен записывать событие в журнал событий, чтобы сообщить точную причину сбоя.
Комментарии
В этом методе модуль записи должен освободить все временные системные ресурсы, созданные при подготовке к участию в операции VSS.
Модуль записи не будет получать дальнейшие уведомления о событиях, связанных с операцией VSS, в которую он участвовал после выполнения CVssWriter::OnAbort .
Этот метод не будет вызываться, если модуль записи вызвал CVssWriter::OnPostSnapshot (то есть получил уведомление об окончании теневой копии).
Событие Abort создается в случаях:
- Обработчики событий Заморозки и оттепели модуля записи (CVssWriter::OnFreeze и CVssWriter::OnThaw) возвращают значение false или не могут завершиться в период времени, указанный в CVssWriter::Initialize.
- Инициатор запроса явно создает событие Abort, вызывая IVssBackupComponents::AbortBackup.
- При создании теневой копии после события PrepareForSnapshot произошел сбой поставщика или VSS.
Если этот метод вызывает метод CVssWriterEx2::GetSessionId, CVssWriter::SetWriterFailure или CVssWriterEx2::SetWriterFailureEx , он должен сделать это в том же потоке, который вызвал этот метод. Дополнительные сведения см. в разделе Обработка событий записи.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | vswriter.h (включая Vss.h, VsWriter.h) |
Библиотека | VssApi.lib |