Функция 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 |
Заголовок |
|
Библиотека |
|
DLL |
|
Имя в кодировке Юникод и ANSI |
DsBackupPrepareW (Юникод) и DsBackupPrepareA (ANSI) |