Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Функция CertSrvBackupGetBackupLogs извлекает список имен файлов журналов служб сертификатов, для которого необходимо создать резервную копию для заданного контекста резервного копирования.
Синтаксис
HRESULT CERTBCLI_API CertSrvBackupGetBackupLogsW(
[in] HCSBC hbc,
[out] PWSTR *ppwszzBackupLogFiles,
[out] DWORD *pcbSize
);
Параметры
[in] hbc
Дескриптор контекста резервного копирования служб сертификатов.
[out] ppwszzBackupLogFiles
Указатель на указатель WCHAR , который получит список имен файлов журнала, завершаемых null. После каждого имени файла имеется пустой символ, а в конце списка — дополнительный символ NULL. Имя файла будет в формате UNC "## \\Server\SharePoint\... Path...\FileName.ext". Имена каталогов будут иметь ту же форму, но без конечной "\FileName.ext". Текст "##" обозначает тип файла резервной копии служб сертификатов (CSBFT_*) и сохраняется в виде одного символа Юникода , отличного от NULL, с префиксом для каждого UNC-пути. Этот тег типа определен в Certbcli.h и может быть одним из следующих значений для этой функции.
Завершив использование выделенной памяти, освободите ее, вызвав функцию CertSrvBackupFree .
Задание ppwszzBackupLogFilesзначения NULL перед вызовом этой функции является необязательным.
[out] pcbSize
Указатель на значение DWORD , указывающее количество байтов в ppwszzBackupLogFiles.
Возвращаемое значение
Возвращаемое значение — HRESULT. Значение S_OK указывает на успешное выполнение.
Комментарии
Файлы журнала представляют действия базы данных (отправку запросов, отзыв сертификата и т. д.), которые произошли с момента последнего усечения файла журнала. Объем файла журнала увеличивается по мере активности базы данных. Размер файлов журнала можно уменьшить, выполнив резервное копирование и вызвав CertSrvBackupTruncateLogs.
Имя этой функции в Certadm.dll — CertSrvBackupGetBackupLogsW. Эту форму имени необходимо использовать при вызове GetProcAddress. Кроме того, эта функция определена как тип FNCERTSRVBACKUPGETBACKUPUPLOGSW в файле заголовка Certbcli.h.
Примеры
FNCERTSRVBACKUPGETBACKUPLOGSW* pfnGetBackupLogs;
char * szGetBackupLogsFunc = "CertSrvBackupGetBackupLogsW";
WCHAR * pwszzLogFiles;
DWORD nListBytes=0;
HRESULT hr=0;
// Get the address for the desired function.
// hInst was set by calling LoadLibrary for Certadm.dll.
pfnGetBackupLogs = (FNCERTSRVBACKUPGETBACKUPLOGSW*)GetProcAddress
(hInst, szGetBackupLogsFunc);
if ( NULL == pfnGetBackupLogs )
{
printf("Failed GetProcAddress - %s, error=%d\n",
szGetBackupLogsFunc,
GetLastError() );
exit(1); // Or other appropriate error action.
}
// Determine the names of the log files.
// hCSBC was set by an earlier call to CertSrvbackupPrepare.
hr = pfnGetBackupLogs(hCSBC, &pwszzLogFiles, &nListBytes);
if (FAILED(hr))
{
printf("Failed pfnGetBackupLogs call [%x]\n", hr);
exit(1); // Or other appropriate error action.
}
else
{
printf("%d bytes for log file names\n", nListBytes);
WCHAR * pwszLog = pwszzLogFiles;
// Process the list.
while ( L'\0' != *pwszLog )
{
// Use the file name referenced by pwszLog.
// Here it is merely displayed.
printf("%02x: %ws\n", *pwszLog, &pwszLog[1]);
// Move to the next logfile name.
// + 1 moves past the null terminator.
pwszLog+=(wcslen(pwszLog)) + 1;
}
// Free the allocated memory.
// pfnBackupFree is the address of the CertSrvBackupFree
// function.
pfnBackupFree(pwszzLogFiles);
}
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Ни одна версия не поддерживается |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | certbcli.h (включая Certsrv.h) |
Библиотека | Certadm.lib |
DLL | Certadm.dll |
См. также раздел
Использование функций резервного копирования и восстановления служб сертификатов