Interface IWICMetadataQueryReader (wincodec.h)
Expose des méthodes pour récupérer des blocs de métadonnées et des éléments à partir d’un décodeur ou de ses trames d’image à l’aide d’une expression de requête de métadonnées.
Héritage
L’interface IWICMetadataQueryReader hérite de l’interface IUnknown. IWICMetadataQueryReader a également les types de membres suivants :
Méthodes
L’interface IWICMetadataQueryReader a ces méthodes.
IWICMetadataQueryReader ::GetContainerFormat Obtient le format de conteneur des lecteurs de requête de métadonnées. |
IWICMetadataQueryReader ::GetEnumerator Obtient un énumérateur de tous les éléments de métadonnées à l’emplacement relatif actuel dans la hiérarchie de métadonnées. |
IWICMetadataQueryReader ::GetLocation Récupère le chemin d’accès actuel relatif au bloc de métadonnées racine. |
IWICMetadataQueryReader ::GetMetadataByName Récupère le bloc de métadonnées ou l’élément identifié par une expression de requête de métadonnées. |
Remarques
Un lecteur de requête de métadonnées utilise des expressions de requête de métadonnées pour accéder aux métadonnées incorporées. Pour plus d’informations sur le langage de requête de métadonnées, consultez Vue d’ensemble du langage de requête de métadonnées.
L’avantage du lecteur de requête est la possibilité d’accéder à un élément de métadonnées en une seule étape.
Le lecteur de requête permet également de parcourir l’ensemble de la hiérarchie de métadonnées à l’aide de la méthode GetEnumerator . Toutefois, il n’est pas recommandé d’utiliser cette méthode, car IWICMetadataBlockReader et IWICMetadataReader offrent un moyen plus pratique et moins cher.
Exemples
Le code suivant montre comment obtenir un lecteur de requête et l’utiliser pour récupérer un élément de métadonnées.
// Get the query reader
if (SUCCEEDED(hr))
{
hr = pFrameDecode->GetMetadataQueryReader(&pQueryReader);
}
if (SUCCEEDED(hr))
{
hr = pQueryReader->GetMetadataByName(L"/app1/ifd/{ushort=18249}", &value);
PropVariantClear(&value);
}
Le code suivant montre comment obtenir un lecteur de requête et l’utiliser pour récupérer un bloc de métadonnées imbriqué.
// Get the query reader
if (SUCCEEDED(hr))
{
hr = pFrameDecode->GetMetadataQueryReader(&pQueryReader);
}
if (SUCCEEDED(hr))
{
// Get the embedded IFD reader
hr = pQueryReader->GetMetadataByName(L"/app1/ifd", &value);
if (value.vt == VT_UNKNOWN)
{
hr = value.punkVal->QueryInterface(IID_IWICMetadataQueryReader, (void **)&pEmbedReader);
}
PropVariantClear(&value); // Clear value for new query
}
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP avec SP2, Windows Vista [applications de bureau | Applications UWP] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau | applications UWP] |
Plateforme cible | Windows |
En-tête | wincodec.h |
Voir aussi
Conceptuel
Vue d’ensemble du langage de requête de métadonnées
Vue d’ensemble de la lecture et de l’écriture de métadonnées d’image