Compartir a través de


Función SHGetDataFromIDListW (shlobj_core.h)

Recupera datos de propiedades extendidas de una lista de identificadores relativos.

Sintaxis

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

Parámetros

[in] psf

Tipo: IShellFolder

La dirección del primario interfaz de IShellFolder. Debe ser el elemento primario inmediato de la estructura ITEMIDLIST de a la que hace referencia el parámetro pidl .

[in] pidl

Tipo: PCUITEMID_CHILD

Puntero a una estructura ITEMIDLIST que identifica el objeto relativo a la carpeta especificada en psf.

nFormat

Tipo: int

Formato en el que se solicitan los datos. Este parámetro debe establecerse en uno de los valores siguientes.

SHGDFIL_FINDDATA

Formato usado para objetos del sistema de archivos. El parámetro pv es la dirección de una estructura WIN32_FIND_DATA.

SHGDFIL_NETRESOURCE

Formato usado para los recursos de red. El parámetro pv es la dirección de una estructura NETRESOURCE.

SHGDFIL_DESCRIPTIONID

versión 4.71. Formato usado para los recursos de red. El parámetro pv es la dirección de una estructura SHDESCRIPTIONID de .

[out] pv

Tipo: void*

Puntero a un búfer que, cuando esta función devuelve correctamente, recibe los datos solicitados. El formato de este búfer viene determinado por nFormat.

Si nFormat es SHGDFIL_NETRESOURCE, hay dos casos posibles. Si el búfer es lo suficientemente grande, la información de cadena del recurso neto (campos para el nombre de red, el nombre local, el proveedor y los comentarios) se colocará en el búfer. Si el búfer no es lo suficientemente grande, solo se colocará la estructura de recursos netos en el búfer y los punteros de información de cadena se NULL.

cb

Tipo: int

Tamaño del búfer en pv, en bytes.

Valor devuelto

Tipo: HRESULT

Devuelve S_OK si se ejecuta correctamente o E_INVALIDARG de lo contrario.

Observaciones

Esta función extrae solo la información que está presente en el puntero a una lista de identificadores de elemento (PIDL). Dado que el contenido de un PIDL depende del objeto de carpeta que creó el PIDL, no hay ninguna garantía de que toda la información solicitada estará disponible. Además, la información que se devuelve refleja el estado del objeto en el momento en que se creó el PIDL. El estado actual del objeto podría ser diferente. Por ejemplo, si establece nFormat en SHGDFIL_FINDDATA, la función podría asignar valores significativos solo a algunos de los miembros de la estructura de WIN32_FIND_DATA. Los miembros restantes se establecerán en cero. Para recuperar información actual completa sobre un archivo o carpeta del sistema de archivos, use funciones estándar del sistema de archivos, como GetFileTime o FindFirstFile.

E_INVALIDARG se devuelve si el parámetro psf, pidl, pvo cb parámetro no coincide con el parámetro nFormat, o si nFormat no es uno de los valores de SHGDFIL_ específicos mostrados anteriormente.

Nota

El encabezado shlobj_core.h define SHGetDataFromIDList como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.

Requisitos

Requisito Valor
cliente mínimo admitido Windows XP [solo aplicaciones de escritorio]
servidor mínimo admitido Windows 2000 Server [solo aplicaciones de escritorio]
de la plataforma de destino de Windows
encabezado de shlobj_core.h (incluya Shlobj.h, Shlobj_core.h)
biblioteca de Shell32.lib
DLL de Shell32.dll (versión 4.0 o posterior)
conjunto de API de ext-ms-win-shell-shell32-l1-2-1 (introducido en Windows 10, versión 10.0.10240)