Funzione CertSrvBackupPrepareW (certbcli.h)

La funzione CertSrvBackupPrepare viene usata per preparare un server Servizi certificati per le operazioni di backup.

Sintassi

HRESULT CERTBCLI_API CertSrvBackupPrepareW(
  [in]  WCHAR const *pwszServerName,
  [in]  ULONG       grbitJet,
  [in]  ULONG       dwBackupFlags,
  [out] HCSBC       *phbc
);

Parametri

[in] pwszServerName

Puntatore al nome del computer del server per preparare il backup online. Questo nome può essere il nome NetBIOS o il nome DNS.

[in] grbitJet

Valore usato dal motore di database; questo valore deve essere impostato su zero.

[in] dwBackupFlags

Specifica il tipo di backup. Questo può essere uno dei valori seguenti.

Valore Significato
CSBACKUP_TYPE_FULL
Eseguire il backup del database di Servizi certificati, dei log e dei file correlati.
CSBACKUP_TYPE_LOGS_ONLY
Eseguire il backup solo dei file di log.

[out] phbc

Puntatore a un handle di contesto di backup di Servizi certificati (HCSBC).

Valore restituito

Il valore restituito è un HRESULT. Un valore di S_OK indica l'esito positivo e *phbc verrà impostato su un HCSBC che può essere usato da altre API di backup di Servizi certificati.

Commenti

Prima che si verifichi un backup di Servizi certificati, è necessario creare un HCSBC tramite CertSrvBackupPrepare. HCSBC risultante è un parametro necessario delle funzioni di backup di Servizi certificati che possono essere usate per elencare, aprire, leggere e chiudere i file, nonché troncare i file di log.

Nota Al termine della sessione di backup, è necessario chiamare CertSrvBackupEnd per rilasciare HCSBC che ha causato la chiamata a CertSrvBackupPrepare.
 
Il nome della funzione in Certadm.dll è CertSrvBackupPrepareW. È necessario usare questo formato del nome quando si chiama GetProcAddress. Questa funzione viene inoltre definita come tipo FNCERTSRVBACKUPPREPAREW nel file di intestazione Certbcli.h.

Per eseguire questa chiamata, è necessario disporre del privilegio di backup. Per informazioni dettagliate, vedere Impostazione dei privilegi di backup e ripristino.

Esempio

WCHAR *    wszServer = L"MyCertServerMachine";
FNCERTSRVBACKUPPREPAREW* pfnBackupPrepare;
char * szBackPrepFunc = "CertSrvBackupPrepareW";
HINSTANCE  hInst=0;
HCSBC      hCSBC=NULL;
HRESULT    hr=0;

// Load the DLL.
hInst = LoadLibrary(L"Certadm.dll");
if ( NULL == hInst )
{
    printf("Failed LoadLibrary, error=%d\n",
            GetLastError() );
    exit(1); // Or other appropriate error action.
}
// Get the address for the desired function.
pfnBackupPrepare = (FNCERTSRVBACKUPPREPAREW*)GetProcAddress( hInst,
                                        szBackPrepFunc );
if ( NULL == pfnBackupPrepare )
{
    printf("Failed GetProcAddress - %s, error=%d\n",
           szBackPrepFunc,
           GetLastError() );
    exit(1); // Or other appropriate error action.
}

// Prepare CertServ for backup.
hr = pfnBackupPrepare(wszServer,
                      0,
                      CSBACKUP_TYPE_FULL,
                      &hCSBC);
if (FAILED(hr))
{
    printf("Failed pfnBackupPrepare call [%x]\n", hr);
    exit(1); // Or other appropriate error action.
}

// Use the HCSBC for backup operations.
// ...

// When done processing, release the HCSBC context
// by calling CertSrvBackupEnd (not shown here).
// ...


// Done processing, free the DLL.
if (hInst)
    FreeLibrary(hInst);

Requisiti

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

Vedi anche

CertSrvBackupEnd

Uso delle funzioni di backup e ripristino dei servizi certificati