Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Les applications COM effectuent un certain nombre de tâches en dehors du contrôle direct du programmeur. Communication entre les DLL, fréquences d'utilisation des objets et opérations du presse-papiers ne sont que quelques-unes des domaines où vous pouvez rencontrer un comportement inattendu. Lorsque cela se produit, votre première étape consiste à suivre la source du problème.
Le débogueur Visual Studio prend en charge l’exécution pas à pas des conteneurs et des serveurs. Cela inclut la capacité de passer à travers les appels de procédure à distance (RPC).
Débogage d’un serveur et d’un conteneur COM dans la même solution
Vous pouvez déboguer un serveur et un conteneur COM à l’aide de deux projets au sein de la même solution. Définissez les points d’arrêt appropriés dans chaque projet et déboguez. Lorsque le conteneur effectue un appel au serveur qui atteint un point d’arrêt, le conteneur attend que le code du serveur retourne (autrement dit, jusqu’à ce que vous terminiez le débogage).
Le débogage d’un conteneur COM est similaire au débogage d’un programme standard. Une différence est lorsque vous déboguez un événement qui génère une fonction de rappel (comme faire glisser des 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 sur le conteneur
Si vous n’avez pas ou ne souhaitez pas utiliser des informations de débogage pour votre application conteneur, le démarrage du débogage de l’application serveur est un processus en trois étapes :
Démarrez le débogage du serveur en tant qu’application normale.
Définissez les points d’arrêt comme vous le souhaitez.
Démarrez l’application conteneur.
Débogage d’une application SDI (Server and Domain Isolation)
Si vous déboguez une application de serveur et d'isolation de domaine (SDI), vous devez spécifier /Embedding ou /Automation dans la propriété arguments de ligne de commande dans la boîte de dialogue Pages de propriétés Projet pour les projets C/C++, C# ou Visual Basic.
Avec ces arguments de ligne de commande, le débogueur peut lancer l’application serveur comme si elle a été lancée à partir d’un conteneur. Le démarrage du conteneur à partir du Gestionnaire de programmes ou du Gestionnaire de fichiers entraîne ensuite l’utilisation de l’instance du serveur démarré dans le débogueur.
Pour accéder à la boîte de dialogue Pages de propriétés du projet, cliquez avec le bouton droit sur votre projet dans l’Explorateur de solutions, puis choisissez Propriétés dans le menu contextuel. Pour trouver la propriété arguments de ligne de commande, ouvrez la catégorie Propriétés de configuration, puis cliquez sur l'onglet Débogage.