IFsiDirectoryItem::AddTree 方法 (imapi2fs.h)

將目錄樹狀結構的內容新增至檔案系統映像。

語法

HRESULT AddTree(
  [in] BSTR         sourceDirectory,
  [in] VARIANT_BOOL includeBaseDirectory
);

參數

[in] sourceDirectory

包含要建立之目錄樹狀目錄相對路徑的字串。

從根目錄項目呼叫此方法時,請指定完整路徑。

[in] includeBaseDirectory

設定為 VARIANT_TRUE,以將 目錄包含在 sourceDirectory 中,作為文件系統映像中的子目錄。 否則,VARIANT_FALSE。

傳回值

S_OK會在成功時傳回,但可能會因為實作而傳回其他成功碼。 下列錯誤碼通常會在作業失敗時傳回,但不代表唯一可能的錯誤值:

傳回碼 Description
E_OUTOFMEMORY
無法配置所需的記憶體。

值:0x8007000E

E_POINTER
指標無效。

值:0x80004003

IMAPI_E_DIRECTORY_READ_FAILURE
無法列舉目錄樹狀目錄中的檔案,因為許可權而無法存取。

值:0xC0AAB12BL

IMAPI_E_DATA_STREAM_CREATE_FAILURE
由於許可權,無法存取目錄樹狀目錄中的一或多個檔案。

值:0xC0AAB12A

IMAPI_E_DATA_STREAM_READ_FAILURE
無法從為檔案 '%1!ls!' 提供的數據流讀取數據。

值:0xC0AAB129

IMAPI_E_INVALID_PARAM
為參數 %1!ls! 指定的值無效。

值:0xC0AAB101

IMAPI_E_NOT_IN_FILE_SYSTEM
ls!' 不是文件系統的一部分。 必須新增它才能完成此作業。

值:0xC0AAB10B

IMAPI_E_READONLY
FileSystemImage 對象處於唯讀模式。

值:0xC0AAB102

IMAPI_E_IMAGE_SIZE_LIMIT
新增此檔案或目錄會導致結果映像的大小大於目前設定的限制。

值:0xC0AAB120

IMAPI_E_INVALID_PATH
路徑 '%1!s!' 格式不正確或包含無效字元。

值:0xC0AAB110

IMAPI_E_DUP_NAME
ls!' 名稱已經存在。

值:0xC0AAB112

IMAPI_E_NO_UNIQUE_NAME
嘗試新增 '%1!ls!' failed: 無法建立 %2!ls! 的檔案系統特定唯一名稱 檔案系統)。

值:0xC0AAB113

IMAPI_E_ISO9660_LEVELS
ISO9660限制為8個層級的目錄。

值:0xC0AAB131

IMAPI_E_TOO_MANY_DIRS
此檔案系統映像的 %1!ls! 目錄太多 檔案系統)。

值:0xC0AAB130

IMAPI_E_DIR_NOT_FOUND
目錄 %1!s!' 在 FileSystemImage 階層中找不到 。

值:0xC0AAB11A

 
注意GetFileAttributesExFindFirstFile 函式所傳回的值也可以在這裡傳回。
 

備註

新子目錄的父目錄必須已存在於檔案系統映像內。

指定來源目錄中的子目錄結構會在檔案系統映像中隱含鏡像。

如果發生檔案或目錄衝突,則指定的來源目錄內容會優先使用。 檔系統映像會以來源目錄中的適當目錄和檔案覆寫。

如果在處理期間發生例外狀況,文件系統映射會還原成其先前的狀態。

規格需求

需求
最低支援的用戶端 Windows Vista、Windows XP SP2 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限桌面應用程式]
目標平台 Windows
標頭 imapi2fs.h

另請參閱

IFsiDirectoryItem

IFsiDirectoryItem::Add

IFsiDirectoryItem::AddDirectory

IFsiDirectoryItem::AddFile

IFsiDirectoryItem::Remove