DsRestoreRegister 函数
[此函数可用于“要求”部分中指定的操作系统。 在后续版本中,它可能会被修改,也可能无法使用。 从 Windows Vista 开始,请改用卷影复制服务(VSS)。
DsRestoreRegister 函数注册还原操作。此函数会互锁所有后续还原操作,并阻止还原目标在调用 DsRestoreRegisterComplete 函数之前启动。
语法
HRESULT DsRestoreRegister(
_In_ HBC hbc,
_In_ LPCTSTR szCheckPointFilePath,
_In_ LPCTSTR szLogPath,
_In_ EDB_RSTMAP rgrstmap[],
_In_ LONG crstmap,
_In_ LPCTSTR szBackupLogPath,
_In_ ULONG genLow,
_In_ ULONG genHigh
);
参数
-
hbc [in]
-
包含使用 DsRestorePrepare 函数获取的还原上下文句柄。
-
szCheckPointFilePath [in]
-
指向包含 检查point 文件路径的 null 终止字符串的指针。 此路径由 DsRestoreGetDatabaseLocations 函数提供,并且 BFT 值为 BFT_CHECKPOINT_DIR。 这通常与系统数据库路径相同。 正确备份还原功能需要此路径。 此参数不能为 NULL。 在此参数中传递 NULL 将导致还原过程中出错。
-
szLogPath [in]
-
指向一个以 null 结尾的字符串的指针,其中包含日志文件将还原的路径。 此路径由 DsRestoreGetDatabaseLocations 函数提供,其 BFT 值为 BFT_LOG_DIR。 如果路径指向空目录,将在那里创建新的日志文件。 此参数不能为 NULL。
-
rgrstmap [in]
-
包含每个数据库的旧路径和新路径的EDB_RSTMAP结构的数组。 每个数据库都有一个结构。 对于目录,系统数据库有一个结构,目录数据库有另一个结构。 数组中元素的顺序无关紧要。 crstmap 参数包含数组中的元素数。
-
crstmap [in]
-
包含 rgrstmap 数组中的元素数。
-
szBackupLogPath [in]
-
指向一个以 null 结尾的字符串的指针,该字符串包含备份日志文件当前所在的路径。 此参数不能为 NULL。
-
genLow [in]
-
包含此还原会话中要还原的最低日志编号。 这是从0x00000到0xFFFFF范围内的十六进制数。
-
genHigh [in]
-
包含此还原会话中要还原的最高日志编号。 这是从0x00000到0xFFFFF范围内的十六进制数。
返回值
如果函数成功或 Win32 或 RPC 错误代码,则返回S_OK否则返回。 以下列表列出了可能的错误代码。
-
ERROR_ACCESS_DENIED
-
调用方没有调用此函数的适当访问权限。 DsSetAuthIdentity 函数可用于设置用于备份和还原函数的凭据。
-
ERROR_INVALID_PARAMETER
-
一个或多个参数无效。
-
hrMissingExpiryToken
-
提供给 DsRestorePrepare 的过期令牌无效。 此值在 Ntdsbmsg.h 中定义。
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows Vista |
最低受支持的服务器 |
Windows Server 2008 |
标头 |
|
库 |
|
DLL |
|
Unicode 和 ANSI 名称 |
DsRestoreRegisterW (Unicode) 和 DsRestoreRegisterA (ANSI) |