PsCreateAdapterFromPropertyStore, fonction (propsys.h)
Crée un adaptateur à partir d’un IPropertyStore.
Syntaxe
PSSTDAPI PSCreateAdapterFromPropertyStore(
[in] IPropertyStore *pps,
[in] REFIID riid,
[out] void **ppv
);
Paramètres
[in] pps
Type : IPropertyStore*
Pointeur vers un objet IPropertyStore qui représente le magasin de propriétés.
[in] riid
Type : REFIID
Référence à un IID.
[out] ppv
Type : void**
Lorsque cette fonction retourne, contient le pointeur d’interface demandé dans riid.
Valeur retournée
Type : HRESULT
Si cette fonction réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.
Remarques
L’objet adapter implémente IPropertySetStorage, IPropertyStore, IPropertyStoreCapabilities et IObjectProvider.
Utilisez cette fonction si vous avez besoin d’un objet qui implémente IPropertyStore avec une API qui nécessite une interface IPropertySetStorage . L’objet créé peut également être utile pour une extension d’espace de noms qui souhaite fournir la prise en charge de la liaison à des éléments d’espace de noms à l’aide de IPropertySetStorage. Les applications doivent appeler cet objet à partir d’un seul thread à la fois.
Le magasin de propriétés d’adaptateur créé par cette fonction conserve une référence à l’interface IPropertyStore source. Par conséquent, l’application appelante est libre de libérer sa référence à l’IPropertyStore source chaque fois que cela est pratique après l’appel de cette fonction.
Le magasin de propriétés de l’adaptateur effectue des appels aux méthodes sur l’interface IPropertyStore comme il convient. Par conséquent, si l’application appelante écrit des valeurs dans le magasin, elle doit appeler la méthode IPropertyStore ::Commit sur une seule des interfaces.
Exemples
L’exemple suivant, à inclure dans le cadre d’un programme plus large, montre comment utiliser PSCreateAdapterFromPropertyStore pour utiliser un magasin de propriétés d’adaptateur pour convertir une interface IPropertyStore en interface IPropertySetStorage .
// IPropertyStore *ppropstore;
// Assume variable ppropstore is initialized and valid
IPropertySetStorage *pSetStorage;
HRESULT hr = PSCreateadapterFromPropertyStore(ppropstore, IID_PPV_ARGS(&pSetStorage));
if (SUCCEEDED(hr))
{
// pSetStorage is now valid and can be used to access the data in ppropstore.
pSetStorage->Release();
}
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP avec SP2, Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2003 avec SP1 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | propsys.h |
Bibliothèque | Propsys.lib |
DLL | Propsys.dll (version 6.0 ou ultérieure) |
Composant redistribuable | Windows Desktop Search (WDS) 3.0 |