Choisir une stratégie d’implémentation du moteur de débogage
Utilisez l’architecture au moment de l’exécution pour déterminer votre stratégie d’implémentation de moteur de débogage (DE). Vous pouvez créer le moteur de débogage en cours dans le programme que vous déboguez. Créez le moteur de débogage en cours dans le gestionnaire de débogage de session Visual Studio (SDM). Vous pouvez également créer le moteur de débogage hors processus pour les deux. Les instructions suivantes doivent vous aider à choisir parmi ces trois stratégies.
Consignes
Bien qu’il soit possible que le DE soit hors processus à la fois pour le SDM et le programme que vous déboguez, il n’y a généralement aucune raison de le faire. Les appels entre les limites de processus sont relativement lents.
Les moteurs de débogage sont déjà fournis pour l’environnement d’exécution natif Win32 et pour l’environnement d’exécution du langage commun. Si vous devez remplacer le DE pour l’un ou l’autre environnement, vous devez créer le DE in-process par le SDM.
Sinon, vous créez le DE in-process sur le SDM ou in-process vers le programme que vous déboguez. Vous devez prendre en compte si l’évaluateur d’expression du DE nécessite un accès fréquent au magasin de symboles du programme. Ou, si le magasin de symboles peut être chargé en mémoire pour un accès rapide. Tenez également compte des approches suivantes :
S’il n’y a pas beaucoup d’appels entre l’évaluateur d’expression et le magasin de symboles, ou si le magasin de symboles peut être lu dans l’espace mémoire SDM, créez le DE in-process sur le SDM. Vous devez retourner le CLSID du moteur de débogage au SDM lorsqu’il est attaché à votre programme. Le SDM utilise ce CLSID pour créer une instance in-process du de.
Si le DE doit appeler le programme pour accéder au magasin de symboles, créez le DE in-process avec le programme. Dans ce cas, le programme crée l’instance du DE.