Функция CertSrvBackupPrepareW (certbcli.h)
Функция CertSrvBackupPrepare используется для подготовки сервера служб сертификатов к операциям резервного копирования.
Синтаксис
HRESULT CERTBCLI_API CertSrvBackupPrepareW(
[in] WCHAR const *pwszServerName,
[in] ULONG grbitJet,
[in] ULONG dwBackupFlags,
[out] HCSBC *phbc
);
Параметры
[in] pwszServerName
Указатель на имя компьютера сервера для подготовки к оперативному резервному копированию. Это может быть NetBIOS-имя или DNS-имя.
[in] grbitJet
Значение, используемое ядром СУБД; это значение должно быть равно нулю.
[in] dwBackupFlags
Указывает тип резервного копирования. Это может быть одно из следующих значений.
Значение | Значение |
---|---|
|
Создайте резервную копию базы данных служб сертификатов, журналов и связанных файлов. |
|
Создайте резервную копию только файлов журнала. |
[out] phbc
Указатель на дескриптор контекста резервного копирования служб сертификатов (HCSBC).
Возвращаемое значение
Возвращаемое значение — HRESULT. Значение S_OK указывает на успешное выполнение, а *phbc будет иметь значение HCSBC , которое может использоваться другими API резервного копирования служб сертификатов.
Комментарии
Перед созданием резервного копирования служб сертификатов необходимо создать HCSBC с помощью CertSrvBackupPrepare. Результирующий HCSBC является необходимым параметром функций резервного копирования служб сертификатов, который можно использовать для перечисления, открытия, чтения и закрытия файлов, а также для усечения файлов журнала.
Чтобы выполнить этот вызов, необходимо иметь право на резервное копирование. Дополнительные сведения см. в разделе Настройка привилегий резервного копирования и восстановления.
Примеры
WCHAR * wszServer = L"MyCertServerMachine";
FNCERTSRVBACKUPPREPAREW* pfnBackupPrepare;
char * szBackPrepFunc = "CertSrvBackupPrepareW";
HINSTANCE hInst=0;
HCSBC hCSBC=NULL;
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.
pfnBackupPrepare = (FNCERTSRVBACKUPPREPAREW*)GetProcAddress( hInst,
szBackPrepFunc );
if ( NULL == pfnBackupPrepare )
{
printf("Failed GetProcAddress - %s, error=%d\n",
szBackPrepFunc,
GetLastError() );
exit(1); // Or other appropriate error action.
}
// Prepare CertServ for backup.
hr = pfnBackupPrepare(wszServer,
0,
CSBACKUP_TYPE_FULL,
&hCSBC);
if (FAILED(hr))
{
printf("Failed pfnBackupPrepare call [%x]\n", hr);
exit(1); // Or other appropriate error action.
}
// Use the HCSBC for backup operations.
// ...
// When done processing, release the HCSBC context
// by calling CertSrvBackupEnd (not shown here).
// ...
// Done processing, free the DLL.
if (hInst)
FreeLibrary(hInst);
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Ни одна версия не поддерживается |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | certbcli.h (включая Certsrv.h) |
Библиотека | Certadm.lib |
DLL | Certadm.dll |
См. также раздел
Использование функций резервного копирования и восстановления служб сертификатов