Partager via


Débogage de serveurs et de conteneurs COM

Les applications COM effectuent des tâches en dehors du contrôle direct du programmeur.La communication entre les DLL, la fréquence d'utilisation des objets et les opérations du Presse-papiers sont quelques exemples pour lesquels un comportement inattendu peut se produire.Lorsque cela se produit, la première chose à faire est de trouver la source du problème.

Le débogueur Visual Studio prend en charge le pas à pas dans les conteneurs et les serveurs.Cela inclut la possibilité d'explorer pas à pas les appels de procédure à distance (RPC, Remote Procedure Calls).

Dans cette rubrique

  1. Debugging a COM Server and Container in the Same Solution

  2. Debugging a Server Application Without Container Information

  3. Debugging a Server and Domain Isolation (SDI) Application

Débogage d'un serveur COM et le conteneur dans la même Solution

Vous pouvez déboguer un serveur et un conteneur COM en utilisant deux projets contenus dans la même solution.Définissez les points d'arrêt appropriés dans chaque projet et commencez le débogage.Lorsque le conteneur fait un appel au serveur qui rencontre un point d'arrêt, le conteneur attend que le code du serveur soit retourné (c'est-à-dire, jusqu'à ce que le débogage soit terminé).Vous pouvez également repérer des appels qui dépassent les limites du processus.Pour plus d'informations, consultez Macro TRACE.

Le débogage d'un conteneur COM est identique au débogage d'un programme standard.La seule différence se produit lorsque vous déboguez un événement qui génère un rappel (par exemple, le glissement de données sur l'application conteneur).Dans ce cas, vous devez définir un point d'arrêt dans la fonction de rappel.

Débogage d'une Application serveur sans informations de conteneur

Si vous n'avez pas ou ne souhaitez pas utiliser les informations de débogage pour votre application conteneur, le débogage de l'application serveur est un processus en trois étapes :

  1. Commencez le débogage du serveur comme pour une application normale.

  2. Définissez les points d'arrêt voulus.

  3. Démarrez l'application conteneur.

Débogage d'un serveur et le domaine d'Isolation (SDI) Application

Si vous déboguez une application serveur SDI, vous devez spécifier /Embedding ou /Automation dans la propriété Arguments de la ligne de commande de la boîte de dialogue Pages de propriétés de projet pour les projets C/C++, C# ou Visual Basic.

Avec ces arguments de la ligne de commande, le débogueur peut lancer l'application serveur comme si elle était lancée d'un conteneur.Le démarrage du conteneur à partir du Gestionnaire de programmes ou du Gestionnaire de fichiers entraîne l'utilisation par le conteneur de l'instance du serveur démarrée dans le débogueur.

Pour accéder à la boîte de dialogue Pages de propriétés de projet, cliquez avec le bouton droit sur votre projet dans l'Explorateur de solutions, puis sélectionnez Propriétés dans le menu contextuel.Pour trouver la propriété Arguments de la ligne de commande, développez la catégorie Propriétés de configuration, puis cliquez sur la page Débogage.

Voir aussi

Autres ressources

Débogage COM et ActiveX