SisCSFilesToBackupForLink 函数

SisCSFilesToBackupForLink 函数返回描述指定 SIS 链接指向的公用存储文件的信息。

语法

BOOL SisCSFilesToBackupForLink(
  _In_  PVOID  sisBackupStructure,
  _In_  PVOID  reparseData,
  _In_  ULONG  reparseDataSize,
  _Out_ PVOID  thisFileContext,
  _Out_ PVOID  *matchingFileContext,
  _Out_ PULONG countOfCommonStoreFilesToBackUp,
  _Out_ PWCHAR **commonStoreFilesToBackUp
);

参数

sisBackupStructure [in]

指向从 SisCreateBackupStructure 返回的 SIS 备份结构的指针。

reparseData [in]

指向 SIS 重分析点内容的指针。 此重分析点包含描述 SIS 链接的数据。 若要检索文件的重分析点数据,请使用 FSCTL_GET_REPARSE_POINT 控制代码。

reparseDataSize [in]

reparseData 指向的 SIS 重分析点内容的大小(以字节为单位)。

thisFileContext [out]

指向调用此函数的备份应用程序提供的上下文字符串的指针。 此内容字符串的内容完全由此备份应用程序决定,SIS 备份 API 不会解释。 此参数是可选的;如果未使用,请将此参数的值设置为 NULL。 在这种情况下,不会处理此参数的值。

matchingFileContext [out]

指向此函数的前四个参数中传递的信息所标识的 SIS 链接上下文字符串的双间接指针。 此参数是可选的;如果未提供上下文字符串作为 thisFileContext 参数的值,请将此参数的值设置为 NULL。 在这种情况下,不会处理此参数的值。

countOfCommonStoreFilesToBackUp [out]

commonStoreFilesToBackUp 参数中列出的文件数。

commonStoreFilesToBackUp [out]

指向文件名数组的指针。 这些文件应以 与 SisCreateBackupStructure 请求的通用存储文件相同的方式进行备份。

返回值

如果成功完成,则此函数返回 TRUE ,否则返回 FALSE 。 调用 GetLastError 以获取有关调用失败原因的详细信息。

备注

对于要备份的每个 SIS 链接文件,备份应用程序只应调用此函数一次。

备份应用程序可以通过标记来标识 SIS 重分析点,IO_REPARSE_TAG_SIS。 此标记在 Winnt.h 中定义。

如果由 reparseData 参数的值标识的此重新分析点描述了要备份的文件的第一个实例,则此函数将返回 NULL 作为 matchingFileContext 参数的值,并使用要备份的一个或多个 common-store 文件的名称初始化 commonStoreFilesToBackUp 字符串数组的值。 否则,此函数会将 matchingFileContext 参数的值设置为与指定文件的第一个实例对应的上下文字符串,并将 countOfCommonStoreFilesToBackUp 参数的值设置为 0。 如果有多个与指定链接对应的公共存储文件, 则 thisFileContext 参数的值将是对应于数组中返回的第一个公共存储文件的上下文字符串,即 commonStoreFilesToBackUp[0]。

此函数的当前版本最多返回一个通用存储文件,但在将来的版本中,单个链接可能由多个通用存储文件提供支持,例如,文件中每个流都有一个,因此备份应用程序应在每次调用此函数时支持多个文件。 在任何情况下,每次备份传递时,每个通用存储文件最多都会返回一次。

备份应用程序应备份或还原 common-store 文件或由 commonStoreFilesToBackUp 参数中返回的文件名或文件名标识的文件。 无论是否存在相应的通用存储文件,备份应用程序都应备份磁盘上存在的 SIS 链接文件,例如,作为重分析点和稀疏文件,并且很可能未填充任何范围。 备份应用程序可能会立即备份或还原一个或多个通用存储文件、推迟备份,或根据需要将它们混合在一起。

备份操作完成后,通过调用 SisFreeAllocatedMemory 解除分配 commonStoreFilesToBackUp 字符串数组使用的内存。

要求

要求
最低受支持的客户端
Windows XP [仅限桌面应用]
最低受支持的服务器
Windows Server 2003 [仅限桌面应用]
标头
Sisbkup.h

Sisbkup.lib
DLL
Sisbkup.dll

另请参阅

SisFreeAllocatedMemory

SisCreateBackupStructure