Função CertSrvBackupGetBackupLogsW (certbcli.h)
A função CertSrvBackupGetBackupLogs recupera a lista de nomes de arquivo de log dos Serviços de Certificados que precisam ser copiados em backup para o contexto de backup fornecido.
Sintaxe
HRESULT CERTBCLI_API CertSrvBackupGetBackupLogsW(
[in] HCSBC hbc,
[out] PWSTR *ppwszzBackupLogFiles,
[out] DWORD *pcbSize
);
Parâmetros
[in] hbc
Um identificador para um contexto de backup dos Serviços de Certificados.
[out] ppwszzBackupLogFiles
Um ponteiro para o ponteiro WCHAR que receberá a lista de nomes de arquivo de log terminados em nulo. Há um caractere nulo após cada nome de arquivo e um caractere nulo extra no final da lista. O nome do arquivo estará no formato UNC "## \\Server\SharePoint\... Path...\FileName.ext". Os nomes de diretório terão o mesmo formato, mas sem o "\FileName.ext" à direita. O texto "##" indica um tipo de arquivo de Backup dos Serviços de Certificados (CSBFT_*) e é armazenado como um único caractere Unicode não nulo prefixado em cada caminho UNC. Essa marca de tipo é definida em Certbcli.h e pode ser um dos valores a seguir para essa função.
Quando terminar de usar essa memória alocada, libere-a chamando a função CertSrvBackupFree .
Definir ppwszzBackupLogFiles como NULL antes de chamar essa função é opcional.
[out] pcbSize
Um ponteiro para o valor DWORD que especifica o número de bytes em ppwszzBackupLogFiles.
Retornar valor
O valor retornado é um HRESULT. Um valor de S_OK indica êxito.
Comentários
Os arquivos de log representam a atividade do banco de dados (envios de solicitação, revogação de certificado e assim por diante) que ocorreu desde o último truncamento do arquivo de log. O volume do arquivo de log aumenta à medida que a atividade do banco de dados ocorre. Os arquivos de log podem ser reduzidos de tamanho executando um backup e, em seguida, chamando CertSrvBackupTruncateLogs.
O nome dessa função no Certadm.dll é CertSrvBackupGetBackupLogsW. Você deve usar essa forma do nome ao chamar GetProcAddress. Além disso, essa função é definida como o tipo FNCERTSRVBACKUPGETBACKUPLOGSW no arquivo de cabeçalho Certbcli.h.
Exemplos
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);
}
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Nenhum compatível |
Servidor mínimo com suporte | Windows Server 2003 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | certbcli.h (inclua Certsrv.h) |
Biblioteca | Certadm.lib |
DLL | Certadm.dll |
Confira também
Usando as funções de backup e restauração dos Serviços de Certificados