次の方法で共有


CertSrvServerControlW 関数 (certbcli.h)

CertSrvServerControl 関数は、証明書サービスをプログラムで停止するサービス制御コマンドを発行します。

構文

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

パラメーター

[in] pwszServerName

制御コマンドを発行するサーバーの名前または構成文字列へのポインター。

[in] dwControlFlags

pwszServerName で指定された Certificate Services サーバーに発行される制御コマンドを表す値。 dwControlFlags では、次の値がサポートされています。

意味
CSCONTROL_SHUTDOWN
証明書サービスを停止します。

[out] pcbOut

今後使用するために、このパラメーターは ppbOut に割り当てられたバイト数になります。 現在の実装では、 メモリは ppbOut に割り当てられません。 この値は NULL に設定できます。

[out] ppbOut

今後の使用のために、このパラメーターは、発行されたコマンドからの出力を表すバイトへのポインターへのポインターになります。 現在の実装では、 メモリは ppbOut に割り当てられません。 この値は NULL に設定できます。

戻り値

戻り値は HRESULT です。 値 S_OK は成功を示します。

注釈

この関数の目的は、バックアップまたは復元アプリケーションが証明書サービス アプリケーションをプログラムで停止できるようにすることです (これにより、サービス コントローラー API を使用する必要はありません)。 この方法で証明書サービスを停止すると、証明書サービスがコンソール モードで実行されている場合にも機能します。サービス コントローラー API は、コンソール モードで実行されているアプリケーションを制御できません。

Certadm.dll のこの関数の名前は CertSrvServerControlW です。 GetProcAddress を呼び出すときは、この形式の名前を使用する必要があります。 また、この関数は Certbcli.h ヘッダー ファイルで FNCERTSRVSERVERCONTROLW 型として定義されます。

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.
}

要件

要件
サポートされている最小のクライアント サポートなし
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー certbcli.h (Certsrv.h を含む)
Library Certadm.lib
[DLL] Certadm.dll

こちらもご覧ください

証明書サービスのバックアップと復元の機能の使用