Partager via


Fonction CertSrvBackupGetBackupLogsW (certbcli.h)

La fonction CertSrvBackupGetBackupLogs récupère la liste des noms de fichiers journaux des services de certificat qui doivent être sauvegardés pour le contexte de sauvegarde donné.

Syntaxe

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

Paramètres

[in] hbc

Handle dans un contexte de sauvegarde des services de certificats.

[out] ppwszzBackupLogFiles

Pointeur vers le pointeur WCHAR qui recevra la liste des noms de fichiers journaux terminés par null. Il existe un caractère null après chaque nom de fichier et un caractère null supplémentaire à la fin de la liste. Le nom de fichier se présente sous la forme UNC « ## \\Server\SharePoint\... Chemin d’accès...\FileName.ext ». Les noms de répertoires auront la même forme, mais sans la fin « \FileName.ext ». Le texte « ## » désigne un type de fichier de sauvegarde des services de certificats (CSBFT_*) et est stocké sous la forme d’un seul caractère Unicode non null préfixé sur chaque chemin UNC. Cette balise de type est définie dans Certbcli.h et peut être l’une des valeurs suivantes pour cette fonction.

Valeur Signification
CSBFT_LOG
Nom du fichier journal de la base de données Des services de certificats, y compris le chemin d’accès.
CSBFT_PATCH_FILE
Nom, y compris le chemin d’accès, du fichier de mise à jour de la base de données Des services de certificats.

Windows Server 2003 : Les fichiers de mise à jour de base de données ne sont pas utilisés.

 

Une fois que vous avez terminé d’utiliser cette mémoire allouée, libérez-la en appelant la fonction CertSrvBackupFree .

La définition de ppwszzBackupLogFiles sur NULL avant d’appeler cette fonction est facultative.

[out] pcbSize

Pointeur vers la valeur DWORD qui spécifie le nombre d’octets dans ppwszzBackupLogFiles.

Valeur retournée

La valeur de retour est HRESULT. Une valeur de S_OK indique la réussite.

Remarques

Les fichiers journaux représentent l’activité de base de données (soumissions de demandes, révocation de certificat, etc.) qui s’est produite depuis la dernière troncation du fichier journal. Le volume du fichier journal augmente à mesure que l’activité de la base de données se produit. Vous pouvez réduire la taille des fichiers journaux en effectuant une sauvegarde, puis en appelant CertSrvBackupTruncateLogs.

Le nom de cette fonction dans le Certadm.dll est CertSrvBackupGetBackupLogsW. Vous devez utiliser cette forme du nom lors de l’appel de GetProcAddress. En outre, cette fonction est définie comme type FNCERTSRVBACKUPGETBACKUPLOGSW dans le fichier d’en-tête Certbcli.h.

Exemples

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

Configuration requise

Condition requise Valeur
Client minimal pris en charge Aucun pris en charge
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
Plateforme cible Windows
En-tête certbcli.h (include Certsrv.h)
Bibliothèque Certadm.lib
DLL Certadm.dll

Voir aussi

CertSrvBackupFree

CertSrvBackupOpenFile

CertSrvBackupTruncateLogs

Utilisation des fonctions de sauvegarde et de restauration des services de certificat