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) |
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für