IFsiDirectoryItem2::AddTreeWithNamedStreams 方法 (imapi2fs.h)
将目录树的内容以及与所有文件关联的命名流添加到文件系统映像。
语法
HRESULT AddTreeWithNamedStreams(
[in] BSTR sourceDirectory,
[in] VARIANT_BOOL includeBaseDirectory
);
parameters
[in] sourceDirectory
包含要创建的目录树的相对路径的字符串。 根据文件系统命名约定,路径应仅包含有效字符。 此参数不能为 NULL。
[in] includeBaseDirectory
设置为 VARIANT_TRUE 以将 sourceDirectory 中的目录作为子目录包含在文件系统映像中。 否则, VARIANT_FALSE。
返回值
成功后返回S_OK,但实现后可能会返回其他成功代码。 以下错误代码通常在操作失败时返回,但不表示唯一可能的错误值:
返回代码/值 | 说明 |
---|---|
|
当前文件系统修订版不支持功能,因此,在没有此功能的情况下,将创建功能。 |
|
为参数 '%1!ls!' 指定的值 之间的时间间隔无效。 |
|
ls!' 不是文件系统的一部分。 必须添加它才能完成此操作。 |
|
为 “%1!ls!”创建数据流时出错。 |
|
无法从为文件 “%1!ls!” 提供的流中读取数据。 |
|
引用的 IFileSystemImage 对象处于只读模式。 |
|
'%1!ls!' 名称已存在。 |
|
添加 “%1!ls!” 将导致结果图像的大小大于当前配置的限制。 |
|
为文件 “%1!ls!” 提供的数据流不一致;应为 %2!I64d! 字节,找到 %3!I64d! |
|
未能分配所需的内存。 |
注解
新子目录的父目录必须已存在于文件系统映像中。
指定 sourceDirectory 中的子目录结构在文件系统映像中隐式镜像。 如果发生文件或目录冲突,则指定的源目录的内容优先。
文件系统映像将被源目录中的相应目录和文件覆盖。 如果在处理过程中发生异常,则文件系统映像将还原到其以前的状态。
如果为文件系统对象调用此方法,该对象不包含 UDF,且该文件系统列表中启用了在生成的映像中创建,或者如果 UDF 修订版低于 2.00,则此方法 返回成功代码IMAPI_S_IMAGE_FEATURE_NOT_SUPPORTED。 这表示已添加命名流,但不会显示在生成的文件系统映像中,除非在文件系统对象中启用了 UDF 修订版 2.00 或更高版本。
在利用 ADS) (备用数据流时,请务必注意文件系统映像的流数限制为 1000。 超过此数字将导致数据丢失。
Windows Server 2003 支持此方法,Service Pack 1 (SP1) 、Windows XP with Service Pack 2 (SP2) ,以及 Windows Vista 通过用于存储的 Windows 功能包。 Windows 7 和 Windows Server 2008 R2 原生支持此更新包提供的所有功能。
要求
最低受支持的客户端 | Windows Vista、Windows XP SP2 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | imapi2fs.h |