Función CertSrvRestorePrepareW (certbcli.h)

La función CertSrvRestorePrepare prepara una instancia de Servicios de certificados para las operaciones de restauración.

Sintaxis

HRESULT CERTBCLI_API CertSrvRestorePrepareW(
  [in]  WCHAR const *pwszServerName,
  [in]  ULONG       dwRestoreFlags,
  [out] HCSBC       *phbc
);

Parámetros

[in] pwszServerName

Puntero al nombre del equipo del servidor para prepararse para las operaciones de restauración. Este nombre puede ser el nombre NetBIOS o el nombre DNS.

[in] dwRestoreFlags

Campo de bits que representa la combinación de valores de la tabla siguiente.

Valor Significado
CSRESTORE_TYPE_FULL
Restaure la base de datos, los registros y los archivos relacionados de Servicios de certificados.

[out] phbc

Puntero a un identificador de contexto de copia de seguridad de Servicios de certificados (HCSBC).

Valor devuelto

El valor devuelto es hrESULT. Un valor de S_OK indica que se ha realizado correctamente y *phbc se establece en un HCSBC, que otras API de restauración de Servicios de certificados pueden usar.

Comentarios

Antes de que se pueda realizar una operación de restauración de Servicios de certificados, es necesario crear un HCSBC mediante CertSrvRestorePrepare. Varias funciones de restauración de Servicios de certificados pueden usar este HCSBC .

Nota Una vez completada la sesión de restauración, es necesario llamar a CertSrvRestoreEnd para liberar el HCSBC que resultó de la llamada a CertSrvRestorePrepare.
 
El nombre de esta función en Certadm.dll es CertSrvRestorePrepareW. Debe usar este formato del nombre al llamar a GetProcAddress. Además, esta función se define como tipo FNCERTSRVRESTOREPREPAREW en el archivo de encabezado Certbcli.h.

Para ejecutar esta llamada, debe tener el privilegio de restauración. Para obtener más información, vea Establecer los privilegios de copia de seguridad y restauración.

Ejemplos

FNCERTSRVRESTOREPREPAREW*  pfnRestorePrepare;
char * szRestorePrepFunc = "CertSrvRestorePrepareW";
HCSBC      hCSBC=NULL;
HINSTANCE  hInst=0;
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.
pfnRestorePrepare = (FNCERTSRVRESTOREPREPAREW*)GetProcAddress( hInst,
                                          szRestorePrepFunc );
if ( NULL == pfnRestorePrepare )
{
    printf("Failed GetProcAddress - %s, error=%d\n",
           szRestorePrepFunc,
           GetLastError() );
    exit(1); // Or other appropriate error action.
}

// Prepare CertServ for restoration.
hr = pfnRestorePrepare(wszServer,
                       CSRESTORE_TYPE_FULL,
                       &hCSBC);

if (FAILED(hr))
{
    printf("Failed pfnRestorePrepare call [%x]\n", hr);
    exit(1); // Or other appropriate error action.
}

// Use the HCSBC for restore operations.
// ...


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

// Free the DLL.
if (hInst)
    FreeLibrary(hInst);

Requisitos

Requisito Value
Cliente mínimo compatible No se admite ninguno
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado certbcli.h (incluya Certsrv.h)
Library Certadm.lib
Archivo DLL Certadm.dll

Consulte también

CertSrvRestoreEnd

GetProcAddress

Establecer los privilegios de copia de seguridad y restauración

Uso de las funciones de copia de seguridad y restauración de Servicios de certificados