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 版或更新版本)

另請參閱

IShellFolder

IShellFolder2

SHGetDesktopFolder