Метод CVssWriter::Initialize (vswriter.h)
Инициализирует объект CVssWriter и позволяет приложению записи взаимодействовать с VSS.
Initialize — это открытый метод, реализованный базовым классом CVssWriter .
Синтаксис
HRESULT Initialize(
[in] VSS_ID WriterId,
[in] LPCWSTR wszWriterName,
[in] VSS_USAGE_TYPE ut,
[in] VSS_SOURCE_TYPE st,
[in] VSS_APPLICATION_LEVEL nLevel,
[in] DWORD dwTimeoutFreeze,
[in] VSS_ALTERNATE_WRITER_STATE aws,
[in] bool bIOThrottlingOnly,
[in] LPCWSTR wszWriterInstanceName
);
Параметры
[in] WriterId
Глобальный уникальный идентификатор (GUID) класса записи.
[in] wszWriterName
Строка расширенных символов, завершающаяся нулевым значением, которая содержит имя модуля записи. Эта строка не локализована.
[in] ut
Значение перечисления VSS_USAGE_TYPE , указывающее, как данные, управляемые модулем записи, используются в хост-системе.
[in] st
Значение перечисления VSS_SOURCE_TYPE , указывающее тип данных, управляемых модулем записи.
[in] nLevel
Значение перечисления VSS_APPLICATION_LEVEL , указывающее уровень приложения, на котором модуль записи получает уведомление о событии Freeze .
Значение по умолчанию для этого параметра — VSS_APP_FRONT_END.
[in] dwTimeoutFreeze
Максимально допустимое время (в миллисекундах) между получением модуля записи уведомления о событии Замораживания и получением соответствующего уведомления о событии Thaw от VSS. По истечении времени ожидания метод CVssWriter::OnAbort модуля записи вызывается автоматически.
Значение по умолчанию для этого параметра — 60 000.
[in] aws
Значение перечисления VSS_ALTERNATE_WRITER_STATE , указывающее, имеет ли модуль записи связанный альтернативный модуль записи.
Значение по умолчанию для этого параметра — VSS_AWS_NO_ALTERNATE_WRITER. Вызывающий объект не должен переопределять это значение по умолчанию. Этот параметр зарезервирован для использования в будущем.
[in] bIOThrottlingOnly
Задайте для этого параметра значение true , если методы регулирования ввода-вывода включены, или значение false в противном случае.
Значение по умолчанию для этого параметра — false. Вызывающий объект не должен переопределять это значение по умолчанию. Этот параметр зарезервирован для использования в будущем.
[in] wszWriterInstanceName
Строка расширенных символов, завершающаяся null, которая содержит имя экземпляра модуля записи.
Значение по умолчанию для этого параметра — NULL. Если модуль записи содержит несколько экземпляров и требует событий восстановления, этот параметр является обязательным и не может иметь значение NULL. Дополнительные сведения см. в следующем разделе Примечаний.
Windows Server 2003 и Windows XP: До Windows Server 2003 с пакетом обновления 1 (SP1) этот параметр зарезервирован для использования системой, и вызывающий объект не должен переопределять значение по умолчанию.
Возвращаемое значение
Ниже приведены допустимые коды возврата для этого метода.
Значение | Значение |
---|---|
|
Объект записи успешно инициализирован. |
|
Не удалось инициализировать объект записи; инфраструктура модуля записи VSS была неактивна, так как Windows находилась в безопасном режиме или была настроена. |
|
Вызывающий объект не является администратором. |
|
Одно из значений параметра недопустимо. |
|
У вызывающего объекта не хватает памяти или других системных ресурсов. |
|
Непредвиденная ошибка. Код ошибки записывается в файл журнала ошибок. Дополнительные сведения см. в разделе Обработка событий и ошибок в VSS.
Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP: Это значение не поддерживается до Windows Server 2008 R2 и Windows 7. вместо этого используется E_UNEXPECTED. |
Комментарии
VSS назначает уникальный идентификатор экземпляра модуля записи каждому экземпляру приложения записи. Если в системе одновременно присутствует несколько экземпляров (например, если в системе запущено несколько серверов SQL), каждый модуль записи однозначно определяется сочетанием идентификатора класса записи и идентификатора экземпляра модуля записи.
Параметр wszWriterInstanceName позволяет модулю записи с несколькими экземплярами указать постоянное имя для каждого экземпляра модуля записи в виде удобочитаемой строки. Это имя должно быть уникальным для всех экземпляров модуля записи в системе. Если модуль записи имеет несколько экземпляров и требует событий восстановления, он должен указать для этого параметра строку, отличной от NULL . VSS использует имя экземпляра для правильного восстановления модулей записи с несколькими экземплярами.
Требования
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | vswriter.h (включая Vss.h, VsWriter.h) |
Библиотека | VssApi.lib |