IShellFolder::EnumObjects 方法 (shobjidl_core.h)
可讓用戶端藉由建立專案識別碼列舉物件並傳回其 IEnumIDList 介面來判斷資料夾的內容。 接著,該介面所支援的方法可用來列舉資料夾的內容。
語法
HRESULT EnumObjects(
[in] HWND hwnd,
[in] SHCONTF grfFlags,
[out] IEnumIDList **ppenumIDList
);
參數
[in] hwnd
類型: HWND
如果需要使用者輸入才能執行列舉,則列舉物件應該使用此視窗控制碼做為父視窗,以接受使用者輸入。 例如,對話方塊會要求密碼,或提示使用者插入 CD 或磁碟片。 如果 hwndOwner 設定為 Null,列舉值不應該張貼任何訊息,而且如果需要使用者輸入,則應該以無訊息方式失敗。
[in] grfFlags
類型: SHCONTF
旗標,指出要包含在列舉中的專案。 如需可能值的清單,請參閱 SHCONTF 列舉類型。
[out] ppenumIDList
類型: IEnumIDList**
位址,接收這個方法所建立之列舉物件的 IEnumIDList 介面指標。 如果發生錯誤或找不到適當的子物件, ppenumIDList 會設定為 Null。
傳回值
類型: HRESULT
如果成功則傳回 S_OK
,否則傳回錯誤值。 某些實作也可能傳回 S_FALSE
,表示沒有符合傳入 grfFlags 的子系。 如果 S_FALSE
傳回 , ppenumIDList 會設定為 NULL
。
備註
如果方法傳回S_OK, 則 ppenumIDList 會收到列舉值的指標。 在此情況下,呼叫端應用程式必須呼叫其Release方法來釋放傳回的IEnumIDList物件。
如果方法傳回S_FALSE,則資料夾不會包含適當的子物件,而且 ppenumIDList 中指定的指標會設定為 Null。
如果方法失敗,則會傳回錯誤值,並將 ppenumIDList 中指定的指標設定為 Null。
如果資料夾不包含適當的子物件,則允許 IShellFolder::EnumObjects 方法將 *ppenumIDList 設定為 Null 並傳回S_FALSE,或將 *ppenumIDList 設定為不會產生任何物件的列舉值並傳回S_OK。 呼叫應用程式必須針對這兩個成功案例做好準備。
規格需求
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | shobjidl_core.h (包含 Shobjidl.h) |
Dll | Shell32.dll (4.0 版或更新版本) |