Partager via


IOleInPlaceObject ::InPlaceDeactivate, méthode (oleidl.h)

Désactive un objet actif sur place et ignore l’état d’annulation de l’objet.

Syntaxe

HRESULT InPlaceDeactivate();

Valeur de retour

Cette méthode retourne S_OK en cas de réussite. Les autres valeurs de retour possibles sont les suivantes.

Code de retour Description
E_UNEXPECTED
Une erreur inattendue s’est produite.

Remarques

Notes aux appelants

Cette méthode est appelée par le conteneur immédiat d’un objet actif pour désactiver l’objet actif et ignorer son état d’annulation.

Notes aux implémenteurs

Au retour de IOleInPlaceObject ::InPlaceDeactivate, l’objet ignore son état d’annulation. L’application d’objet ne doit pas s’arrêter immédiatement après cet appel. Au lieu de cela, il doit attendre qu’un appel explicite à IOleObject ::Close ou que le nombre de références de l’objet atteigne zéro.

Avant de désactiver, l’application objet doit donner au conteneur la possibilité de replacer son interface utilisateur dans la fenêtre frame en appelant IOleInPlaceSite ::OnUIDeactivate.

Si l’interface utilisateur sur place est toujours visible pendant l’appel à IOleInPlaceObject ::InPlaceDeactivate, l’application objet doit appeler sa propre méthode IOleInPlaceObject ::InPlaceDeactivate pour masquer l’interface utilisateur. L’interface utilisateur sur place peut être éventuellement détruite lors des appels à IOleInPlaceObject ::InPlaceDeactivate et IOleInPlaceObject ::InPlaceDeactivate. Toutefois, si l’interface utilisateur n’a pas encore été détruite lorsque le conteneur appelle IOleObject ::Close, elle doit être détruite pendant l’appel à IOleObject ::Close.

Pendant l’appel à IOleObject ::Close, l’objet doit case activée pour voir s’il est toujours actif sur place. Si c’est le cas, il doit appeler IOleInPlaceObject ::InPlaceDeactivate.

Configuration requise

Condition requise Valeur
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 oleidl.h

Voir aussi

IOleInPlaceObject

IOleInPlaceSite ::OnInPlaceDeactivate

IOleInPlaceSite ::OnUIDeactivate

IOleObject ::Close