DsBackupGetDatabaseNames 函数
[此函数可用于“要求”部分中指定的操作系统。 在后续版本中,它可能会被修改,也可能无法使用。 从 Windows Vista 开始,请改用卷影复制服务(VSS)。
DsBackupGetDatabaseNames 函数获取要为给定备份上下文备份的数据库文件列表。
语法
HRESULT DsBackupGetDatabaseNames(
_In_ HBC hbc,
_Out_ LPTSTR *pszAttachmentInfo,
_Out_ LPDWORD pcbSize
);
参数
-
hbc [in]
-
包含使用 DsBackupPrepare 函数获取的备份上下文句柄。
-
pszAttachmentInfo [out]
-
指向字符串指针的指针,该指针接收数据库文件名列表作为 UNC 路径。 在调用 DsBackupGetDatabaseNames 之前,此值必须初始化为 NULL。
此列表接收单个以 null 结尾的字符串的双 null 终止列表。
此缓冲区由 DsBackupGetDatabaseNames 函数分配,在调用 DsBackupFree 函数不再需要该缓冲区时必须释放该缓冲区。
每个文件名的第一个字符包含标识名称类型的 BFT 常量之一。 DsRestoreGetDatabaseLocations 函数仅提供以下类型的名称。
-
BFT_NTDS_DATABA标准版
-
该文件是 NTDS 数据库文件。 此文件应复制到还原数据时标识为BFT_NTDS_DATABA标准版的文件。
-
BFT_LOG
-
该文件是日志文件。 所有日志文件都会复制到还原数据时标识为 BFT_LOG_DIR 的目录。
-
BFT_PATCH_FILE
-
该文件是修补程序文件。 所有修补程序文件将复制到还原数据时标识为 BFT_CHECKPOINT_DIR 的目录。
输入 [out]
指向接收 pszAttachmentInfo 缓冲区大小(以字节为单位)的 DWORD 值的指针。
返回值
如果函数成功或 Win32 或 RPC 错误代码,则返回S_OK否则返回。 以下列表列出了其他可能的错误代码。
-
ERROR_ACCESS_DENIED
-
调用方没有调用此函数的适当访问权限。 DsSetAuthIdentity 函数可用于设置用于备份和还原函数的凭据。
-
ERROR_INVALID_PARAMETER
-
hbc、 pszAttachmentInfo 或 cdSize 无效。
-
ERROR_NOT_ENOUGH_MEMORY
-
发生内存分配失败。
注解
DsBackupGetDatabaseNames 函数提供备份所需的数据库文件列表。 完整备份由数据库文件和 DsBackupGetBackupLogs 函数提供的日志文件组成。 不支持 Active Directory 服务器的增量备份。
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows Vista |
最低受支持的服务器 |
Windows Server 2008 |
标头 |
|
库 |
|
DLL |
|
Unicode 和 ANSI 名称 |
DsBackupGetDatabaseNamesW (Unicode) 和 DsBackupGetDatabaseNamesA (ANSI) |