Freigeben über


IShellFolder::EnumObjects-Methode (shobjidl_core.h)

Ermöglicht es einem Client, den Inhalt eines Ordners zu bestimmen, indem er ein Elementbezeichner-Enumerationsobjekt erstellt und seine IEnumIDList-Schnittstelle zurückgibt. Die von dieser Schnittstelle unterstützten Methoden können dann verwendet werden, um den Inhalt des Ordners aufzulisten.

Syntax

HRESULT EnumObjects(
  [in]  HWND        hwnd,
  [in]  SHCONTF     grfFlags,
  [out] IEnumIDList **ppenumIDList
);

Parameter

[in] hwnd

Typ: HWND

Wenn benutzereingaben erforderlich sind, um die Enumeration auszuführen, sollte dieses Fensterhandle vom Enumerationsobjekt als übergeordnetes Fenster verwendet werden, um Benutzereingaben zu übernehmen. Ein Beispiel wäre ein Dialogfeld, in dem Sie nach einem Kennwort fragen oder den Benutzer auffordern, eine CD oder Diskette einzulegen. Wenn hwndOwner auf NULL festgelegt ist, sollte der Enumerator keine Nachrichten posten, und wenn Benutzereingaben erforderlich sind, sollte dies automatisch fehlschlagen.

[in] grfFlags

Typ: SHCONTF

Flags, die angeben, welche Elemente in die Enumeration eingeschlossen werden sollen. Eine Liste der möglichen Werte finden Sie im aufgezählten SHCONTF-Typ .

[out] ppenumIDList

Typ: IEnumIDList**

Die Adresse, die einen Zeiger auf die IEnumIDList-Schnittstelle des von dieser Methode erstellten Enumerationsobjekts empfängt. Wenn ein Fehler auftritt oder keine geeigneten Unterobjekte gefunden werden, wird ppenumIDList auf NULL festgelegt.

Rückgabewert

Typ: HRESULT

Gibt S_OK zurück, wenn erfolgreich, oder andernfalls einen Fehlerwert. Einige Implementierungen geben möglicherweise auch zurück S_FALSE, was angibt, dass es keine untergeordneten Elemente gibt, die den übergebenen grfFlags entsprechen. Wenn S_FALSE zurückgegeben wird, ist ppenumIDList auf NULLfestgelegt.

Hinweise

Wenn die Methode S_OK zurückgibt, empfängt ppenumIDList einen Zeiger auf einen Enumerator. In diesem Fall muss die aufrufende Anwendung das zurückgegebene IEnumIDList-Objekt freigeben, indem die Release-Methode aufgerufen wird.

Wenn die Methode S_FALSE zurückgibt, enthält der Ordner keine geeigneten Unterobjekte, und der in ppenumIDList angegebene Zeiger ist auf NULL festgelegt.

Wenn die Methode fehlschlägt, wird ein Fehlerwert zurückgegeben, und der in ppenumIDList angegebene Zeiger wird auf NULL festgelegt.

Wenn der Ordner keine geeigneten Unterobjekte enthält, kann die IShellFolder::EnumObjects-Methode entweder *ppenumIDList auf NULL festlegen und S_FALSE zurückgeben oder *ppenumIDList auf einen Enumerator festlegen, der keine Objekte erzeugt und S_OK zurückgibt. Aufrufen von Anwendungen muss für beide Erfolgsfälle vorbereitet sein.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile shobjidl_core.h (einschließlich Shobjidl.h)
DLL Shell32.dll (Version 4.0 oder höher)

Weitere Informationen

IShellFolder

IShellFolder2

SHGetDesktopFolder