Méthode IMultiInterfaceEventControl::GetSubscriptions (eventsys.h)
Récupère la collection d’objets d’abonnement associés à une méthode d’événement.
HRESULT GetSubscriptions(
[in] REFIID eventIID,
[in] BSTR bstrMethodName,
[in] BSTR optionalCriteria,
[in] int *optionalErrorIndex,
[out, retval] IEventObjectCollection **ppCollection
);
[in] eventIID
Identificateur d’interface de l’interface de déclenchement.
[in] bstrMethodName
Méthode d’événement associée à la collection d’abonnements.
[in] optionalCriteria
Chaîne spécifiant les critères de requête. Si ce paramètre a la valeur NULL, la requête par défaut spécifiée par la méthode SetDefaultQuery est utilisée. Pour plus d’informations sur la formation d’une expression valide pour ce paramètre, consultez la section Remarques ci-dessous.
[in] optionalErrorIndex
Emplacement, exprimé sous forme de décalage, d’une erreur dans le paramètre optionalCriteria . Ce paramètre ne peut pas avoir la valeur NULL.
[out, retval] ppCollection
Adresse d’un pointeur vers une interface IEventObjectCollection sur un objet de collection qui énumère les abonnements associés à l’objet d’événement.
Cette méthode peut retourner les valeurs de retour standard E_INVALIDARG, E_OUTOFMEMORY, E_UNEXPECTED et E_FAIL, ainsi que les valeurs suivantes.
Code de retour | Description |
---|---|
|
La commande s'est correctement terminée. |
|
Une erreur de syntaxe s’est produite lors de la tentative d’évaluation d’une chaîne de requête. |
|
Un nom de champ non valide a été utilisé dans une chaîne de requête. |
|
Une exception inattendue a été levée. |
|
Une erreur interne inattendue a été détectée. |
Cette méthode est une forme plus spécialisée de la méthode IEventSystem::Query . En plus d’obtenir uniquement des objets d’abonnement, une collection obtenue en appelant GetSubscriptions est automatiquement mise à jour chaque fois que la collection d’abonnements change.
Les critères de requête spécifiés par le paramètre optionalCriteria peuvent être « ALL », pour spécifier une requête pour tous les objets d’abonnement, ou une expression booléenne indiquant une ou plusieurs conditions qu’un objet d’abonnement doit remplir pour être inclus dans le résultat de la requête. Les expressions valides sont de la forme suivante :
[NOT] valeur de propertynamerelationalOperator. Les opérateurs relationnels valides sont les suivants :
==, =, !=, <>, ~=. Les valeurs valides sont « string », « string », {GUID}, TRUE, FALSE, NULL.
Les expressions booléennes individuelles peuvent être jointes à AND ou OR. Les expressions peuvent être imbriquées entre parenthèses pour appliquer un ordre d’évaluation spécifique.
Voici quelques exemples de critères de requête valides :
« EventClassID == {F89859D1-6565-11D1-88C8-0080C7D771BF} »
« EventClassID == {F89859D1-6565-11D1-88C8-0080C7D771BF} AND MethodName = 'StockPriceChange' »
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | eventsys.h |