Fungsi CertSrvRestorePrepareW (certbcli.h)
Fungsi CertSrvRestorePrepare menyiapkan instans Layanan Sertifikat untuk operasi pemulihan.
HRESULT CERTBCLI_API CertSrvRestorePrepareW(
[in] WCHAR const *pwszServerName,
[in] ULONG dwRestoreFlags,
[out] HCSBC *phbc
);
[in] pwszServerName
Penunjuk ke nama komputer server untuk mempersiapkan operasi pemulihan. Nama ini bisa menjadi nama NetBIOS atau nama DNS.
[in] dwRestoreFlags
Bitfield yang mewakili kombinasi nilai dalam tabel berikut.
[out] phbc
Penunjuk ke handel konteks pencadangan Layanan Sertifikat (HCSBC).
Nilai yang dikembalikan adalah HRESULT. Nilai S_OK menunjukkan keberhasilan, dan *phbc diatur ke HCSBC, yang dapat digunakan oleh API pemulihan Layanan Sertifikat lainnya.
Sebelum operasi pemulihan Layanan Sertifikat dapat terjadi, perlu untuk membuat HCSBC melalui CertSrvRestorePrepare. HCSBC ini dapat digunakan oleh berbagai fungsi pemulihan Layanan Sertifikat.
Untuk menjalankan panggilan ini, Anda harus memiliki hak istimewa pemulihan. Untuk informasi selengkapnya, lihat Mengatur Hak Istimewa Pencadangan dan Pemulihan.
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);
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Tidak ada yang didukung |
Server minimum yang didukung | Windows Server 2003 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | certbcli.h (termasuk Certsrv.h) |
Pustaka | Certadm.lib |
DLL | Certadm.dll |
Mengatur Hak Istimewa Pencadangan dan Pemulihan
Menggunakan Fungsi Pencadangan dan Pemulihan Layanan Sertifikat