Funzione SHGetPropertyStoreForWindow (shellapi.h)
Recupera un oggetto che rappresenta la raccolta di proprietà di una finestra specifica, che consente di eseguire query o impostare tali proprietà.
Sintassi
SHSTDAPI SHGetPropertyStoreForWindow(
[in] HWND hwnd,
[in] REFIID riid,
[out] void **ppv
);
Parametri
[in] hwnd
Tipo: HWND
Handle della finestra le cui proprietà vengono recuperate.
[in] riid
Tipo: REFIID
Riferimento all'IID dell'oggetto archivio delle proprietà da recuperare tramite ppv. Si tratta in genere di IID_IPropertyStore.
[out] ppv
Tipo: void**
Quando questa funzione viene restituita, contiene il puntatore di interfaccia richiesto in riid. Si tratta in genere di IPropertyStore.
Valore restituito
Tipo: HRESULT
Se questa funzione ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .
Commenti
Un'applicazione può usare questa funzione per ottenere l'accesso all'archivio delle proprietà di una finestra in modo che possa impostare un ID modello utente applicazione esplicito (AppUserModelID) nella proprietà System.AppUserModel.ID .
Le proprietà di una finestra devono essere rimosse prima che la finestra venga chiusa. In caso contrario, le risorse usate da tali proprietà non vengono restituite al sistema. Una proprietà viene rimossa impostandola sul tipo PROPVARIANT VT_EMPTY.
Quando viene eseguita una chiamata a IPropertyStore::SetValue sull'oggetto recuperato tramite ppv, le proprietà e i valori vengono archiviati immediatamente nella finestra. Pertanto, non è necessaria alcuna chiamata a IPropertyStore::Commit . Non si verifica alcun errore se viene chiamato, ma non ha alcun effetto.
Un'applicazione imposta AppUserModelIDs in singole finestre per controllare il raggruppamento della barra delle applicazioni e il contenuto della Jump List dell'applicazione. Ad esempio, un'applicazione suite potrebbe voler fornire un pulsante della barra delle applicazioni diverso per ognuna delle relative sottofeature, con le finestre relative a tale sottofeature raggruppate sotto tale pulsante. Senza AppUserModelID a livello di finestra, queste finestre verranno raggruppate nel processo principale.
Le applicazioni devono anche usare questo archivio proprietà per impostare queste proprietà di riavvio in modo che il sistema possa restituire l'applicazione a tale stato.
- System.AppUserModel.RelaunchCommand
- System.AppUserModel.RelaunchDisplayNameResource
- System.AppUserModel.RelaunchIconResource
Requisiti
Client minimo supportato | Windows 7 [solo app desktop] |
Server minimo supportato | Windows Server 2008 R2 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | shellapi.h |
Libreria | Shell32.lib |
DLL | Shell32.dll (versione 6.1 o successiva) |