Partager via


ComAwareEventInfo.RemoveEventHandler(Object, Delegate) Méthode

Définition

Détache un gestionnaire d’événements d’un objet COM.

public:
 override void RemoveEventHandler(System::Object ^ target, Delegate ^ handler);
public override void RemoveEventHandler(object target, Delegate handler);
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public override void RemoveEventHandler(object target, Delegate handler);
override this.RemoveEventHandler : obj * Delegate -> unit
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
override this.RemoveEventHandler : obj * Delegate -> unit
Public Overrides Sub RemoveEventHandler (target As Object, handler As Delegate)

Paramètres

target
Object

Objet cible auquel le délégué d’événement est lié.

handler
Delegate

Délégué d’événement.

Attributs

Exceptions

L’événement n’a pas d’accesseur public remove .

Impossible d’utiliser le gestionnaire passé.

Le target paramètre est null et l’événement n’est pas statique.

- ou -

L’objet EventInfo n’est pas déclaré sur la cible.

L’appelant n’a pas l’autorisation d’accès au membre.

Remarques

Cette méthode est similaire à la EventInfo.RemoveEventHandler(Object, Delegate) méthode, sauf qu’elle vous permet de détacher les événements des objets COM.

S’il target s’agit d’un objet COM, cette méthode libère un délégué vers un événement à l’aide de la ComEventsHelper.Remove(Object, Guid, Int32, Delegate) méthode.

RemoveEventHandler facilite l’annulation de l’inscription des récepteurs d’événements COM qui transfèrent les appels aux délégués managés correspondants. Il nécessite les informations suivantes :

  • Objet cible lui-même (target).

  • GUID de l’interface source.

  • DispID de la méthode sur l’interface COM qui correspond à l’événement spécifié.

  • Délégué qui serait appelé lorsque l’objet COM déclenche l’événement correspondant (handler).

RemoveEventHandler recherche l’interface source COM correspondante (spécifiée comme premier paramètre du ComEventInterfaceAttribute.ComEventInterfaceAttribute(Type, Type) constructeur). Il recherche ensuite une méthode sur l’interface source dont le nom est identique au nom de l’événement. La valeur de GuidAttribute l’interface source est le GUID passé à ComEventsHelper.Remove(Object, Guid, Int32, Delegate); la valeur de DispIDAttribute la méthode est la valeur DispID passée à ComEventsHelper.Remove(Object, Guid, Int32, Delegate).

S’applique à