Función SHGetPropertyStoreForWindow (shellapi.h)
Recupera un objeto que representa la colección de propiedades de una ventana específica, que permite consultar o establecer esas propiedades.
Sintaxis
SHSTDAPI SHGetPropertyStoreForWindow(
[in] HWND hwnd,
[in] REFIID riid,
[out] void **ppv
);
Parámetros
[in] hwnd
Tipo: HWND
Identificador de la ventana cuyas propiedades se recuperan.
[in] riid
Tipo: REFIID
Referencia al IID del objeto de almacén de propiedades que se va a recuperar a través de ppv. Esto suele ser IID_IPropertyStore.
[out] ppv
Tipo: void**
Cuando se devuelve esta función, contiene el puntero de interfaz solicitado en riid. Normalmente, es IPropertyStore.
Valor devuelto
Tipo: HRESULT
Si esta función se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT.
Comentarios
Una aplicación puede usar esta función para obtener acceso al almacén de propiedades de una ventana para que pueda establecer un identificador explícito del modelo de usuario de aplicación (AppUserModelID) en la propiedad System.AppUserModel.ID .
Las propiedades de una ventana deben quitarse antes de cerrar la ventana. Si esto no se hace, los recursos usados por esas propiedades no se devuelven al sistema. Se quita una propiedad estableciendo en el tipo PROPVARIANT VT_EMPTY.
Cuando se realiza una llamada a IPropertyStore::SetValue en el objeto recuperado a través de ppv, las propiedades y los valores se almacenan inmediatamente en la ventana. Por lo tanto, no se necesita ninguna llamada a IPropertyStore::Commit . No se produce ningún error si se llama a , pero no tiene ningún efecto.
Una aplicación establece AppUserModelIDs en ventanas individuales para controlar la agrupación de la barra de tareas de la aplicación y el contenido de jump List. Por ejemplo, es posible que una aplicación de conjunto de aplicaciones quiera proporcionar un botón de barra de tareas diferente para cada una de sus subfeatures, con las ventanas relacionadas con esa subfeature agrupadas en ese botón. Sin appUserModelID de nivel de ventana, esas ventanas se agruparían en el proceso principal.
Las aplicaciones también deben usar este almacén de propiedades para establecer estas propiedades de relanzamiento para que el sistema pueda devolver la aplicación a ese estado.
- System.AppUserModel.RelaunchCommand
- System.AppUserModel.RelaunchDisplayNameResource
- System.AppUserModel.RelaunchIconResource
Requisitos
Cliente mínimo compatible | Windows 7 [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2008 R2 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | shellapi.h |
Library | Shell32.lib |
Archivo DLL | Shell32.dll (versión 6.1 o posterior) |
Consulte también
Identificadores de modelo de usuario de aplicación (AppUserModelID)