Метод IVssBackupComponents::GetWriterStatus (vsbackup.h)
Метод GetWriterStatus возвращает состояние указанного модуля записи.
Синтаксис
HRESULT GetWriterStatus(
[in] UINT iWriter,
[out] VSS_ID *pidInstance,
[out] VSS_ID *pidWriter,
[out] BSTR *pbstrWriter,
[out] VSS_WRITER_STATE *pnStatus,
[out] HRESULT *phResultFailure
);
Параметры
[in] iWriter
Индекс модуля записи, метаданные которого необходимо извлечь. Значение этого параметра является целым числом от 0 до n–1 включительно, где n — общее количество модулей записи в текущей системе. Значение n возвращается IVssBackupComponents::GetWriterStatusCount.
[out] pidInstance
Адрес переменной, выделенной вызывающим объектом, которая получает идентификатор экземпляра модуля записи.
[out] pidWriter
Адрес переменной, выделенной вызывающим объектом, которая получает идентификатор для класса записи.
[out] pbstrWriter
Адрес переменной, выделенной вызывающим объектом, которая получает строку, содержащую имя указанного модуля записи.
[out] pnStatus
Адрес переменной, выделенной вызывающим объектом, которая получает значение перечисления VSS_WRITER_STATE .
[out] phResultFailure
Адрес переменной, выделенной вызывающей стороны, которая получает код сбоя HRESULT, возвращенный модулем записи.
Ниже приведены поддерживаемые значения для pHrResultFailure.
Значение | Значение |
---|---|
|
Писатель был успешным. |
|
Теневая копия содержит только подмножество томов, необходимых средству записи для правильного резервного копирования компонента приложения. |
|
У модуля записи не хватает памяти или других системных ресурсов. Для обработки этого кода ошибки рекомендуется подождать десять минут, а затем повторить операцию до трех раз. |
|
Операция записи завершилась сбоем из-за истечения времени ожидания между событиями Freeze и Thaw. Для обработки этого кода ошибки рекомендуется подождать десять минут, а затем повторить операцию до трех раз. |
|
Сбой модуля записи из-за ошибки, которая, скорее всего, не произойдет, если был перезапущен весь процесс резервного копирования, восстановления или создания теневой копии. Для обработки этого кода ошибки рекомендуется подождать десять минут, а затем повторить операцию до трех раз. |
|
Операция записи завершилась сбоем из-за ошибки, которая может повторяться при создании другой теневой копии. Дополнительные сведения см. в разделе Обработка событий и ошибок в VSS. |
|
Модуль записи не отвечает. |
|
Состояние записи недоступно для одного или нескольких модулей записи. Модуль записи может достичь максимального числа доступных сеансов резервного копирования и восстановления.
Windows Vista, Windows Server 2003 и Windows XP: Это значение не поддерживается. |
Возвращаемое значение
Ниже приведены допустимые коды возврата для этого метода.
Значение | Значение |
---|---|
|
Успешно возвращено состояние указанного модуля записи. Обратите внимание, что значение параметра pHrWriterFailure должно быть проверено, чтобы убедиться, что модуль записи выполнен успешно. Коды ошибок модуля записи могут находиться в списке VsWriter.h, а также в разделе Ошибки и вето модуля записи. |
|
Одно из значений параметра недопустимо. |
|
У вызывающего объекта не хватает памяти или других системных ресурсов. |
|
Объект компонентов резервного копирования не инициализирован, этот метод был вызван во время операции восстановления или этот метод не был вызван в правильной последовательности. |
|
Указанный модуль записи не существует. |
|
Непредвиденная ошибка. Код ошибки записывается в файл журнала ошибок. Дополнительные сведения см. в разделе Обработка событий и ошибок в VSS.
Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP: Это значение не поддерживается до Windows Server 2008 R2 и Windows 7. вместо этого используется E_UNEXPECTED. |
Комментарии
Инициатор запроса должен вызвать асинхронную операцию IVssBackupComponents::GatherWriterStatus и дождаться ее завершения перед вызовом GetWriterStatus.
Когда вызывающий объект завершит доступ к сведениям о состоянии, возвращенным этим методом, он должен вызвать SysFreeString , чтобы освободить память, хранящуюся в параметре pbstrWriter .
Значения VSS_E_WRITERERROR_XXX, возвращаемые в параметре pHrResultFailure , создаются средствами записи. VSS_E_WRITER_NOT_RESPONDING и VSS_E_WRITER_STATUS_NOT_AVAILABLE создаются службой VSS.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | vsbackup.h (включая VsBackup.h, Vss.h, VsWriter.h) |
Библиотека | VssApi.lib |