Функция CertSrvBackupGetBackupLogsW (certbcli.h)

Функция 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 и может быть одним из следующих значений для этой функции.

Значение Значение
CSBFT_LOG
Имя файла журнала базы данных служб сертификатов, включая путь.
CSBFT_PATCH_FILE
Имя, включая путь, файла обновления для базы данных служб сертификатов.

Windows Server 2003: Файлы обновления базы данных не используются.

 

Завершив использование выделенной памяти, освободите ее, вызвав функцию 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

См. также раздел

CertSrvBackupFree

CertSrvBackupOpenFile

CertSrvBackupTruncateLogs

Использование функций резервного копирования и восстановления служб сертификатов