SHGetDataFromIDListA-Funktion (shlobj_core.h)

Ruft erweiterte Eigenschaftendaten aus einer relativen Bezeichnerliste ab.

Syntax

SHSTDAPI SHGetDataFromIDListA(
  [in]  IShellFolder    *psf,
  [in]  PCUITEMID_CHILD pidl,
        int             nFormat,
  [out] void            *pv,
        int             cb
);

Parameter

[in] psf

Typ: IShellFolder*

Die Adresse der übergeordneten IShellFolder-Schnittstelle . Dies muss das unmittelbare übergeordnete Element der ITEMIDLIST-Struktur sein, auf die vom pidl-Parameter verwiesen wird.

[in] pidl

Typ: PCUITEMID_CHILD

Ein Zeiger auf eine ITEMIDLIST-Struktur , die das Objekt relativ zum in psf angegebenen Ordner identifiziert.

nFormat

Typ: int

Das Format, in dem die Daten angefordert werden. Dieser Parameter muss auf einen der folgenden Werte festgelegt werden.

SHGDFIL_FINDDATA

Format, das für Dateisystemobjekte verwendet wird. Der pv-Parameter ist die Adresse einer WIN32_FIND_DATA-Struktur .

SHGDFIL_NETRESOURCE

Format, das für Netzwerkressourcen verwendet wird. Der pv-Parameter ist die Adresse einer NETRESOURCE-Struktur .

SHGDFIL_DESCRIPTIONID

Version 4.71. Format, das für Netzwerkressourcen verwendet wird. Der pv-Parameter ist die Adresse einer SHDESCRIPTIONID-Struktur .

[out] pv

Typ: void*

Ein Zeiger auf einen Puffer, der die angeforderten Daten empfängt, wenn diese Funktion erfolgreich zurückgibt. Das Format dieses Puffers wird durch nFormat bestimmt.

Wenn nFormatSHGDFIL_NETRESOURCE ist, gibt es zwei mögliche Fälle. Wenn der Puffer groß genug ist, werden die Zeichenfolgeninformationen der net-Ressource (Felder für den Netzwerknamen, lokalen Namen, Anbieter und Kommentare) in den Puffer eingefügt. Wenn der Puffer nicht groß genug ist, wird nur die Nettoressourcenstruktur in den Puffer eingefügt, und die Zeichenfolgeninformationszeiger sind NULL.

cb

Typ: int

Größe des Puffers bei pv in Bytes.

Rückgabewert

Typ: HRESULT

Gibt S_OK zurück, wenn erfolgreich oder andernfalls E_INVALIDARG.

Hinweise

Diese Funktion extrahiert nur Informationen, die im Zeiger auf eine Elementbezeichnerliste (PIDL) vorhanden sind. Da der Inhalt einer PIDL vom Ordnerobjekt abhängt, das die PIDL erstellt hat, gibt es keine Garantie dafür, dass alle angeforderten Informationen verfügbar sind. Darüber hinaus geben die zurückgegebenen Informationen den Zustand des Objekts zum Zeitpunkt der Erstellung der PIDL an. Der aktuelle Zustand des Objekts kann unterschiedlich sein. Wenn Sie z. B. nFormat auf SHGDFIL_FINDDATA festlegen, weist die Funktion möglicherweise nur einigen Membern der WIN32_FIND_DATA-Struktur aussagekräftige Werte zu. Die verbleibenden Member werden auf 0 (null) festgelegt. Wenn Sie vollständige aktuelle Informationen zu einer Dateisystemdatei oder einem Dateisystemordner abrufen möchten, verwenden Sie Standardmäßige Dateisystemfunktionen wie GetFileTime oder FindFirstFile.

E_INVALIDARG wird zurückgegeben, wenn der psf-, pidl-, pv- oder cb-Parameter nicht mit dem nFormat-Parameter übereinstimmt oder wenn nFormat keiner der oben gezeigten spezifischen SHGDFIL_ Werte ist.

Hinweis

Der shlobj_core.h-Header definiert SHGetDataFromIDList als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht Codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile shlobj_core.h (einschließlich Shlobj.h, Shlobj_core.h)
Bibliothek Shell32.lib
DLL Shell32.dll (Version 4.0 oder höher)
APIs ext-ms-win-shell-shell32-l1-2-1 (eingeführt in Windows 10, Version 10.0.10240)