Поделиться через


Функция DsBackupPrepare

[Эта функция доступна для использования в операционных системах, указанных в разделе Требования. В последующих версиях он может быть изменен или недоступен. Начиная с Windows Vista, используйте службу теневого копирования томов (VSS ).]

Функция DsBackupPrepare подготавливает каталог на указанном сервере для оперативного резервного копирования и возвращает дескриптор контекста резервного копирования, используемый в последующих вызовах других функций резервного копирования.

Синтаксис

HRESULT DsBackupPrepare(
  _In_  LPCTSTR szBackupServer,
  _In_  ULONG   grbit,
  _In_  ULONG   btBackupType,
  _Out_ PVOID   *ppvExpiryToken,
  _Out_ LPDWORD pcbExpiryTokenSize,
  _Out_ HBC     *phbc
);

Параметры

szBackupServer [in]

Указатель на строку, завершающуюся значением NULL, которая содержит имя сервера для резервного копирования. Предыдущие обратные косые очки являются необязательными. Сервер должен быть тем же компьютером, с которым вызывается эта функция. Имя сервера не может содержать символ подчеркивания (_). Пример имени сервера — "\\server1".

grbit [in]

Определяет, будут ли создаваться резервные копии файлов журнала. Это значение всегда должно быть равно 0, так как добавочные резервные копии не поддерживаются.

btBackupType [in]

Указывает тип резервного копирования. Это может быть одно из следующих значений.

BACKUP_TYPE_FULL

Указывает полную резервную копию. Выполняется резервное копирование всего каталога (DIT, файлов журналов и файлов обновлений). Выполняется резервное копирование всех данных, а файлы журнала транзакций усекаются. Поддерживаются только полные резервные копии.

BACKUP_TYPE_LOGS_ONLY

Это значение не поддерживается. Указывает, что будут создаваться резервные копии только журналов базы данных, а не самой базы данных. Обычно используется при выполнении разностного или добавочного резервного копирования.

BACKUP_TYPE_INCREMENTAL

Это значение не поддерживается. DsBackupPrepare возвращает ERROR_INVALID_PARAMETER.

ppvExpiryToken [out]

Указатель на значение PVOID , которое получает указатель на маркер истечения срока действия, связанный с этой резервной копией. pcbExpiryTokenSize получает размер этих данных в байтах. Вызывающий объект должен сохранить содержимое этого маркера с резервной копией, так как маркер должен быть передан в DsRestorePrepare при попытке восстановления данных. После сохранения маркера, который больше не требуется, вызывающий объект должен освободить выделенную память с помощью DsBackupFree.

pcbExpiryTokenSize [out]

Указатель на значение DWORD , которое получает размер маркера в байтах в ppvExpiryToken.

phbc [out]

Указатель на значение HBC , которое получает дескриптор для резервной копии. Этот дескриптор используется при вызове других функций резервного копирования службы каталогов, таких как DsBackupOpenFile и DsBackupEnd.

Возвращаемое значение

Возвращает S_OK , если функция выполнена успешно, или код ошибки в противном случае. В следующем списке перечислены другие возможные коды ошибок.

ERROR_ACCESS_DENIED

Вызывающий объект не имеет соответствующих прав доступа для вызова этой функции. С помощью функции DsSetAuthIdentity можно задать учетные данные для функций резервного копирования и восстановления.

ERROR_INVALID_PARAMETER

szBackupServer или phbcBackupContext недопустимы.

ERROR_NOT_ENOUGH_MEMORY

Произошел сбой выделения памяти.

hrCouldNotConnect

Не удалось найти сервер в szBackupServer , не является контроллером домена или szBackupServer неправильно отформатирован. Это значение определено в ntdsbmsg.h.

hrInvalidParam

ppvExpiryToken и (или ) pcbExpiryTokenSize недопустимы. Это значение определено в ntdsbmsg.h.

RPC_S_INVALID_BINDING

Функция вызывается удаленно или сервер в szServerName не является контроллером домена.

Комментарии

Для этой функции требуется, чтобы вызывающий объект получил привилегию SE_BACKUP_NAME . Функцию DsSetAuthIdentity можно использовать для изменения контекста безопасности, в котором вызывается эта функция.

Требования

Требование Значение
Минимальная версия клиента
Windows Vista
Минимальная версия сервера
Windows Server 2008
Заголовок
Ntdsbcli.h
Библиотека
Ntdsbcli.lib
DLL
Ntdsbcli.dll
Имя в кодировке Юникод и ANSI
DsBackupPrepareW (Юникод) и DsBackupPrepareA (ANSI)

См. также раздел

DsRestorePrepare

DsBackupFree

DsBackupOpenFile

DsBackupEnd

DsSetAuthIdentity

Резервное копирование сервера Active Directory

Функции резервного копирования каталогов