Función CertSrvServerControlW (certbcli.h)

La función CertSrvServerControl emite un comando de control de servicio para detener servicios de certificados mediante programación.

Sintaxis

HRESULT CERTBCLI_API CertSrvServerControlW(
  [in]  WCHAR const *pwszServerName,
  [in]  DWORD       dwControlFlags,
  [out] DWORD       *pcbOut,
  [out] BYTE        **ppbOut
);

Parámetros

[in] pwszServerName

Puntero a un nombre o una cadena de configuración del servidor que se va a emitir el comando de control.

[in] dwControlFlags

Valor que representa el comando de control que se emite al servidor de Servicios de certificados especificado por pwszServerName. El siguiente valor es compatible con dwControlFlags.

Valor Significado
CSCONTROL_SHUTDOWN
Detenga servicios de certificados.

[out] pcbOut

Para su uso futuro, este parámetro será el número de bytes asignados a ppbOut. La implementación actual no asigna memoria a ppbOut. Puede establecer este valor en NULL.

[out] ppbOut

Para su uso futuro, este parámetro será el puntero al puntero a bytes que representan la salida del comando emitido. La implementación actual no asigna memoria a ppbOut. Puede establecer este valor en NULL.

Valor devuelto

El valor devuelto es hrESULT. Un valor de S_OK indica que se ha realizado correctamente.

Comentarios

El propósito de esta función es permitir que una aplicación de copia de seguridad o restauración detenga mediante programación la aplicación servicios de certificados (por lo tanto, no requiere el uso de las API del controlador de servicio). La detención de servicios de certificados de esta manera también funcionará cuando servicios de certificados se ejecuten en modo de consola; las API del controlador de servicio no pueden controlar las aplicaciones que se ejecutan en modo de consola.

El nombre de esta función en Certadm.dll es CertSrvServerControlW. Debe usar este formato del nombre al llamar a GetProcAddress. Además, esta función se define como tipo FNCERTSRVSERVERCONTROLW en el archivo de encabezado Certbcli.h.

Ejemplos

FNCERTSRVSERVERCONTROLW* pfnControl;
char * szControlFunc = "CertSrvServerControlW";
HRESULT    hr=0;

// Get the address for the desired function.
// hInst was set by calling LoadLibrary for Certadm.dll.
pfnControl = (FNCERTSRVSERVERCONTROLW*)GetProcAddress(hInst,
                                           szControlFunc);
if ( NULL == pfnControl )
{
    printf("Failed GetProcAddress - %s, error=%d\n",
           szControlFunc,
           GetLastError() );
    exit(1); // Or other appropriate error action.
}

// Issue a command to stop the service.
hr = pfnControl( L"MyCertServMachine",
                 CSCONTROL_SHUTDOWN,
                 NULL,
                 NULL);

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

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

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