Condividi tramite


Funzione CertSrvBackupGetBackupLogsW (certbcli.h)

La funzione CertSrvBackupGetBackupLogs recupera l'elenco di nomi di file di log di Servizi certificati di cui è necessario eseguire il backup per il contesto di backup specificato.

Sintassi

HRESULT CERTBCLI_API CertSrvBackupGetBackupLogsW(
  [in]  HCSBC hbc,
  [out] PWSTR *ppwszzBackupLogFiles,
  [out] DWORD *pcbSize
);

Parametri

[in] hbc

Handle per un contesto di backup di Servizi certificati.

[out] ppwszzBackupLogFiles

Puntatore al puntatore WCHAR che riceverà l'elenco di nomi di file di log con terminazione Null. È presente un carattere Null dopo ogni nome di file e un carattere Null aggiuntivo alla fine dell'elenco. Il nome del file sarà nel formato UNC "## \\Server\SharePoint\... Path...\FileName.ext". I nomi di directory avranno lo stesso formato, ma senza il carattere finale "\FileName.ext". Il testo "##" indica un tipo di file di backup di Servizi certificati (CSBFT_*) e viene archiviato come carattere Unicode non Null con prefisso su ogni percorso UNC. Questo tag di tipo è definito in Certbcli.h e può essere uno dei valori seguenti per questa funzione.

Valore Significato
CSBFT_LOG
Nome del file di log del database di Servizi certificati, incluso il percorso.
CSBFT_PATCH_FILE
Nome, incluso il percorso, del file di aggiornamento per il database di Servizi certificati.

Windows Server 2003: I file di aggiornamento del database non vengono usati.

 

Al termine dell'uso di questa memoria allocata, liberarla chiamando la funzione CertSrvBackupFree .

L'impostazione di ppwszzBackupLogFiles su NULL prima di chiamare questa funzione è facoltativa.

[out] pcbSize

Puntatore al valore DWORD che specifica il numero di byte in ppwszzBackupLogFiles.

Valore restituito

Il valore restituito è HRESULT. Il valore S_OK indica l'esito positivo.

Commenti

I file di log rappresentano l'attività del database (invii di richieste, revoche di certificati e così via) che si sono verificati dopo l'ultimo troncamento del file di log. Il volume del file di log aumenta man mano che si verifica l'attività del database. È possibile ridurre le dimensioni dei file di log eseguendo un backup e quindi chiamando CertSrvBackupTruncateLogs.

Il nome di questa funzione nel Certadm.dll è CertSrvBackupGetBackupLogsW. È necessario utilizzare questo formato del nome quando si chiama GetProcAddress. Questa funzione viene anche definita come tipo FNCERTSRVBACKUPGETBACKUPLOGSW nel file di intestazione Certbcli.h.

Esempio

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);
}

Requisiti

Requisito Valore
Client minimo supportato Nessuno supportato
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione certbcli.h (include Certsrv.h)
Libreria Certadm.lib
DLL Certadm.dll

Vedi anche

CertSrvBackupFree

CertSrvBackupOpenFile

CertSrvBackupTruncateLogs

Uso delle funzioni di backup e ripristino dei servizi certificati