Функция CertSrvRestorePrepareW (certbcli.h)
Функция CertSrvRestorePrepare подготавливает экземпляр служб сертификатов к операциям восстановления.
Синтаксис
HRESULT CERTBCLI_API CertSrvRestorePrepareW(
[in] WCHAR const *pwszServerName,
[in] ULONG dwRestoreFlags,
[out] HCSBC *phbc
);
Параметры
[in] pwszServerName
Указатель на имя компьютера сервера для подготовки к операциям восстановления. Это может быть NetBIOS-имя или DNS-имя.
[in] dwRestoreFlags
Битовое поле, представляющее сочетание значений в следующей таблице.
Значение | Значение |
---|---|
|
Восстановление базы данных служб сертификатов, журналов и связанных файлов. |
[out] phbc
Указатель на дескриптор контекста резервного копирования служб сертификатов (HCSBC).
Возвращаемое значение
Возвращаемое значение — HRESULT. Значение S_OK указывает на успешное выполнение, а *phbc имеет значение HCSBC, которое может использоваться другими API восстановления служб сертификатов.
Комментарии
Перед выполнением операции восстановления служб сертификатов необходимо создать HCSBC с помощью CertSrvRestorePrepare. Этот HCSBC может использоваться различными функциями восстановления служб сертификатов.
Чтобы выполнить этот вызов, необходимо иметь привилегию восстановления. Дополнительные сведения см. в разделе Настройка привилегий резервного копирования и восстановления.
Примеры
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 |
Header | certbcli.h (включая Certsrv.h) |
Библиотека | Certadm.lib |
DLL | Certadm.dll |
См. также раздел
Настройка привилегий резервного копирования и восстановления
Использование функций резервного копирования и восстановления служб сертификатов