Функция CChkSGFiles.ErrCheckDbHeaders
Область применения: Exchange Server 2003 | | Exchange Server 2007 г. | Exchange Server 2010 г. Exchange Server 2013 г.
Проверяет заголовки файлов базы данных, указанные функцией ErrInit . Эта функция также возвращает размер страницы и количество страниц в каждой из указанных баз данных.
Vitual ERRErrCheckDbHeaders
(
ULONG * const pcbDbPageSize,
ULONG * const pcHeaderPagesPerDb,
ULONG const piDbErrorEncountered,
Const ULONGulFlags = NO_FLAGS
);
Параметры
pcbDbPageSize
Выходной параметр. Размер страницы каждой из указанных баз данных в байтах.
pcHeaderPagesPerDb
Выходной параметр. Количество страниц в начале каждой указанной базы данных, зарезервированных ядром СУБД для внутреннего использования. Обратите внимание, что не следует передавать страницы заголовков в функцию ErrCheckDbPages для проверки.
piDbErrorEncountered
Выходной параметр. Если возвращаемое значение функции указывает на ошибку, этот параметр будет индексом массива rgwszDb[] , переданного функции ErrInit . Элемент индексированного массива представляет базу данных, в которой произошла ошибка. Если функция не возвращает значение ошибки, это недопустимое значение параметра.
ulFlags
Необязательный входной параметр. Это значение зарезервировано для использования в будущем. Переданное значение должно быть равно 0 (ноль).
Возвращаемое значение
Эта функция возвращает код ошибки из перечисления CChkSGFiles.ERR.
Замечания
ErrCheckDbHeaders проверяет, имеют ли все базы данных, зарегистрированные в ErrInit , одинаковые сигнатуры журнала и размер страницы базы данных. Можно также использовать наименьшее значение параметра genMin и наибольшее значение параметра genMax , чтобы определить набор файлов журнала, необходимых для приведения всех зарегистрированных баз данных в состояние чистого завершения работы.
Параметр piDbErrorEncountered задается только при обнаружении ошибки, о чем свидетельствует возвращаемое значение ErrCheckDbHeaders , отличное от нуля.
При возникновении ошибки в этой функции в журнал событий ошибок Windows будет добавлено событие ошибки.
ErrCheckDbHeaders можно вызывать только после вызова ErrInit, и необходимо вызвать его перед вызовом ErrCheckDbPages и ErrCheckLogs.
Если вы используете CHKSGFILES в многопоточном приложении, необходимо вызвать функцию ErrCheckDbHeaders в однопоточной части и вызвать ее только один раз для каждого объекта CCheckSGFiles .
Требования
Exchange 2013 включает только 64-разрядную версию API CHKSGFILES.
Учетная запись, в котором выполняется приложение, должна иметь разрешения на доступ на чтение к проверяемой базе данных и файлам журнала.