Compartir a través de


Función PSLookupPropertyHandlerCLSID (propsys.h)

Obtiene el identificador de clase (CLSID) de un controlador de propiedades de archivo registrado por equipo.

Sintaxis

PSSTDAPI PSLookupPropertyHandlerCLSID(
  [in]  PCWSTR pszFilePath,
  [out] CLSID  *pclsid
);

Parámetros

[in] pszFilePath

Tipo: PCWSTR

Puntero a un búfer Unicode terminado en null que contiene la ruta de acceso absoluta del archivo cuyo CLSID del controlador de propiedades se solicita.

[out] pclsid

Tipo: CLSID*

Cuando se devuelve esta función, contiene el CLSID del controlador de propiedades solicitado.

Valor devuelto

Tipo: PSSTDAPI

Devuelve S_OK si se ejecuta correctamente o un valor de error de lo contrario.

Comentarios

Para obtener información sobre cómo registrar el controlador, vea Inicializar controladores de propiedades.

Esta función devuelve solo los controladores registrados en HKEY_LOCAL_MACHINE.

La mayoría de las aplicaciones que llaman no deben necesitar llamar a este método ni usar CoCreateInstance para crear un controlador de propiedades directamente. En su lugar, las aplicaciones que llaman deben usar IShellItem2::GetPropertyStore para crear un almacén de propiedades para un elemento de Shell en Windows Vista. IShellItem2::GetPropertyStore proporciona el conjunto más grande de propiedades disponibles para un elemento de Shell y la mayoría de las opciones para personalizar exactamente qué propiedades se van a devolver.

Si no se registra ningún controlador de propiedades para el archivo especificado, esta función devuelve un código de error. Cuando esto sucede, es posible leer ciertas propiedades del sistema de archivos del almacén de propiedades devueltos desde IShellItem2::GetPropertyStore.

Las aplicaciones que necesitan crear un controlador de propiedades a partir del código y que deben ejecutarse tanto en Windows Vista como en Windows XP pueden llamar a PSGetItemPropertyHandler para crear un almacén de propiedades para un elemento de Shell a través del redistribuible Microsoft Windows Desktop Search (WDS).

Ejemplos

En el ejemplo siguiente, para incluirse como parte de un programa mayor, se muestra cómo usar PSLookupPropertyHandlerCLSID.

CLSID clsid;

HRESULT hr = PSLookupPropertyHandlerCLSID(L"C:\\windows\\system32\\shell32.dll", &clsid);

if (SUCCEEDED(hr))
{
    // clsid contains the CLSID of the property handler used for 
    // C:\windows\system32\shell32.dll.
}

Requisitos

   
Cliente mínimo compatible Windows XP con SP2, Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 con SP1 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado propsys.h
Library Propsys.lib
Archivo DLL Propsys.dll (versión 6.0 o posterior)
Redistribuible Windows Desktop Search (WDS) 3.0

Consulte también

IShellItem2::GetPropertyStore

PSGetItemPropertyHandler