Share via


ICertExit::Initialize 메서드(certexit.h)

Initialize 메서드는 자체 초기화할 때 서버 엔진에서 호출됩니다.

종료 모듈의 Initialize 메서드를 호출하면 종료 모듈이 초기화를 수행하고 서버 엔진에 알림을 받을 이벤트 종류를 알릴 수 있습니다.

구문

HRESULT Initialize(
  [in]          const BSTR strConfig,
  [out, retval] LONG       *pEventMask
);

매개 변수

[in] strConfig

인증서 서비스를 설정하는 동안 입력한 인증 기관의 이름을 나타냅니다. 구성 문자열 이름에 대한 자세한 내용은 ICertConfig2를 참조하세요.

[out, retval] pEventMask

종료 모듈이 알림을 요청하는 이벤트를 나타내는 값에 대한 포인터입니다. 다음 값 중 하나 이상이 될 수 있습니다.

의미
EXITEVENT_CERTDENIED
인증서가 거부되었습니다.
EXITEVENT_CERTISSUED
인증서가 발급되었습니다.
EXITEVENT_CERTPENDING
인증서 보류 중입니다.
EXITEVENT_CERTRETRIEVEPENDING
RetrievePending에 대한 호출이 성공했습니다.
EXITEVENT_CERTREVOKED
인증서가 해지되었습니다.
EXITEVENT_CRLISSUED
발급된 인증서 해지 목록 입니다.
EXITEVENT_SHUTDOWN
인증서 서비스 종료.

반환 값

C++

메서드가 성공하면 메서드는 S_OK 반환하고 *pEventMask 는 아래 표의 플래그 조합으로 설정됩니다(또는 종료 모듈이 이벤트에 대한 알림을 받지 않으려는 경우 EXITEVENT_INVALID).

메서드가 실패하면 오류를 나타내는 HRESULT 값을 반환합니다. 일반적인 오류 코드 목록은 일반 HRESULT 값을 참조하세요.

종료 모듈에서 이벤트에 대한 알림을 받지 않으려면 플래그 EXITEVENT_INVALID 설정해야 합니다.

VB

반환 값은 종료 모듈이 알림을 요청하는 이벤트를 나타내는 플래그를 포함하는 마스크입니다. 호출 후 이러한 유형의 모든 이벤트는 알림 호출을 통해 서버 엔진에서 종료 모듈로 신호를 보냅니다. 다음 플래그 중 전부 또는 전부를 설정할 수 있습니다.
반환 코드/값 설명
EXITEVENT_CERTDENIED
&H4
인증서가 거부되었습니다.
EXITEVENT_CERTISSUED
&H1
인증서가 발급되었습니다.
EXITEVENT_CERTPENDING
&H2
인증서 보류 중입니다.
EXITEVENT_CERTRETRIEVEPENDING
&H10
RetrievePending에 대한 호출이 성공했습니다.
EXITEVENT_CERTREVOKED
&H8
인증서가 해지되었습니다.
EXITEVENT_CRLISSUED
&H20
발급된 인증서 해지 목록 입니다.
EXITEVENT_INVALID
0
이벤트가 현재 유효하지 않습니다.
EXITEVENT_SHUTDOWN
&H40
인증서 서비스 종료.

설명

사용자 지정 종료 모듈을 작성할 때 이 메서드를 구현합니다.

예제

#include <windows.h>
#include <stdio.h>
#include <Certexit.h>

STDMETHODIMP CCertExit::Initialize(
    /* [in] */ BSTR const strConfig,
    /* [retval][out] */ LONG __RPC_FAR *pEventMask)
{
    // Verify valid pointer passed in.
    if (NULL == pEventMask)
        return ( E_POINTER );  // Bad pointer

    // strConfig can be used by the Exit module.
    // Here, it is stored in a BSTR member variable.
    // Remember to call SysFreeString to free m_strConfig when done.
    m_strConfig = SysAllocString( strConfig );
    // Check to determine whether there was enough memory.
    if (NULL == m_strConfig)
        return ( E_OUTOFMEMORY );  // Not enough memory

    // Inform server engine (CA) that we're interested in
    // the following events.
    *pEventMask = EXITEVENT_CERTISSUED |
                  EXITEVENT_CERTPENDING |
                  EXITEVENT_CERTDENIED |
                  EXITEVENT_CERTREVOKED |
                  EXITEVENT_CERTRETRIEVEPENDING |
                  EXITEVENT_CRLISSUED |
                  EXITEVENT_SHUTDOWN;

    if ( fDebug )
    {
        printf("Exit's Initialize member called\n");
        printf("\tstrConfig = %ws\n", strConfig );
    }

    return( S_OK );
}

요구 사항

요구 사항
지원되는 최소 클라이언트 지원되는 버전 없음
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 certexit.h(Certsrv.h 포함)

추가 정보

ICertExit

ICertExit2

알림