다음을 통해 공유


CertSrvRestorePrepareW 함수(certbcli.h)

CertSrvRestorePrepare 함수는 복원 작업을 위해 인증서 서비스 instance 준비합니다.

구문

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

매개 변수

[in] pwszServerName

복원 작업을 준비할 서버의 컴퓨터 이름에 대한 포인터입니다. 이 이름은 NetBIOS 이름 또는 DNS 이름일 수 있습니다.

[in] dwRestoreFlags

다음 표의 값 조합을 나타내는 비트 필드입니다.

의미
CSRESTORE_TYPE_FULL
Certificate Services 데이터베이스, 로그 및 관련 파일을 복원합니다.

[out] phbc

HCSBC(Certificate Services 백업 컨텍스트 핸들)에 대한 포인터입니다.

반환 값

반환 값은 HRESULT입니다. S_OK 값은 성공을 나타내고 *phbc 는 다른 인증서 서비스 복원 API에서 사용할 수 있는 HCSBC로 설정됩니다.

설명

인증서 서비스 복원 작업이 발생하기 전에 CertSrvRestorePrepare를 통해 HCSBC를 만들어야 합니다. 이 HCSBC 는 다양한 인증서 서비스 복원 함수에서 사용할 수 있습니다.

참고 복원 세션이 완료되면 CertSrvRestoreEnd를 호출하여 CertSrvRestorePrepare 호출로 인한 HCSBC를 해제해야 합니다.
 
Certadm.dll 이 함수의 이름은 CertSrvRestorePrepareW입니다. GetProcAddress를 호출할 때 이 형식의 이름을 사용해야 합니다. 또한 이 함수는 Certbcli.h 헤더 파일에서 FNCERTSRVRESTOREPREPAREW 형식으로 정의됩니다.

이 호출을 실행하려면 복원 권한이 있어야 합니다. 자세한 내용은 백업 및 복원 권한 설정을 참조하세요.

예제

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);

요구 사항

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

추가 정보

CertSrvRestoreEnd

GetProcAddress

백업 및 복원 권한 설정

인증서 서비스 백업 및 복원 함수 사용