提供列舉中一個檔案或目錄的資訊,並允許呼叫端指定擴充資訊。
語法
HRESULT PrjFillDirEntryBuffer2(
[in] PRJ_DIR_ENTRY_BUFFER_HANDLE dirEntryBufferHandle,
[in] PCWSTR fileName,
[in, optional] PRJ_FILE_BASIC_INFO *fileBasicInfo,
[in, optional] PRJ_EXTENDED_INFO *extendedInfo
);
參數
[in] dirEntryBufferHandle
結構的不透明控制碼,可接收已填入專案的相關資訊。
[in] fileName
指向包含專案名稱的 Null 結尾字串的指標
[in, optional] fileBasicInfo
有關要填寫的條目的基本信息。
[in, optional] extendedInfo
指向 PRJ_EXTENDED_INFO 結構的指標,指定要填入之專案的擴充資訊。
返回值
HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER) 表示 dirEntryBufferHandle 沒有足夠的空間來存放新專案。
E_INVALIDARG表示無法辨識 extendedInfo.InfoType。
備註
提供者會使用此常式來服務 PRJ_GET_DIRECTORY_ENUMERATION_CB 回呼。 處理回呼時,提供者會針對列舉中的每個相符檔案或目錄呼叫此常式。 此常式可讓提供者指定檔案或目錄的延伸資訊,例如它是否為符號連結。
如果此常式在將專案新增至列舉時傳回 HRESULT_FROM_WIN32 (ERROR_INSUFFICIENT_BUFFER) ,提供者會從回呼傳回S_OK,並等候下一個 PRJ_GET_DIRECTORY_ENUMERATION_CB 回呼。
提供者會在取得 HRESULT_FROM_WIN32 (ERROR_INSUFFICIENT_BUFFER) 時,繼續使用嘗試新增的專案來填入列舉。
如果此常式傳回 HRESULT_FROM_WIN32 ( PRJ_GET_DIRECTORY_ENUMERATION_CB ERROR_INSUFFICIENT_BUFFER) ,則提供者必須從回呼傳回 HRESULT_FROM_WIN32 (ERROR_INSUFFICIENT_BUFFER) 。
符號連結
若要指定此目錄專案適用於符號連結,提供者會使用單一 PRJ_EXTENDED_INFO 結構格式化緩衝區,並在參數中 extendedInfo 傳遞指標。 提供者會設定結構的欄位,如下所示:
extendedInfo.InfoType = PRJ_EXT_INFO_TYPE_SYMLINKextendedInfo.NextInfoOffset = 0extendedInfo.Symlink.TargetName = <path to the target of the symbolic link>
需求
| Requirement | 價值觀 |
|---|---|
| 最低支援的用戶端 | Windows 10 版本 2004 (10.0;內部版本 19041) |
| 支援的最低伺服器 | Windows Server 2004 版 (10.0;內部版本 19041) |
| 目標平臺 | 窗戶 |
| Header | 投影fslib.h |
| Library | 投影FSLib.lib |