Génération et débogage (Visual C#)

Mise à jour : novembre 2007

Dans Visual C#, vous générez une application exécutable en cliquant sur Générer dans le menu Générer (ou appuyez sur CTRL+MAJ+B). Vous pouvez générer et démarrer l'application en une seule opération en appuyant sur F5 ou cliquant sur Exécuter dans le menu Déboguer.

Pour procéder à la génération, vous devez entrer vos fichiers projet dans le compilateur C#, qui convertit votre code source en langage MSIL (Microsoft Intermediate Language), puis associe au MSIL les métadonnées, les ressources, le manifeste et d'autres modules le cas échéant pour créer un assembly. Un assembly est un fichier exécutable qui porte généralement l'extension .exe ou .dll. En développant votre application, vous pouvez quelquefois souhaiter en générer une version debug afin de tester et voir comment elle s'exécute. Enfin, lorsque tout est correct, vous créerez une version release que vous déploierez chez les clients.

Pour plus d'informations sur les assemblys, consultez Vue d'ensemble des assemblys.

Paramètres de génération

Pour spécifier plusieurs paramètres de génération, cliquez avec le bouton droit sur l'élément de projet dans l'Explorateur de solutions, puis sélectionnez le volet Générer dans le Concepteur de projets. Pour plus d'informations, consultez Introduction au Concepteur de projets et Options du compilateur C#.

Visual Studio utilise l'outil MSBuild pour créer des assemblys. MSBuild peut également être exécuté à partir de la ligne de commande et peut être personnalisé de plusieurs manières. Pour plus d'informations, consultez MSBuild.

Erreurs de génération

Si votre syntaxe C# comporte des erreurs ou des identificateurs qui ne peuvent pas être résolus en un type ou un membre connu, la génération ne pourra aboutir et une liste d'erreurs sera disponible dans la Liste d'erreurs, fenêtre qui s'affiche directement par défaut sous l'éditeur de code. Vous pouvez double-cliquer sur un message d'erreur pour accéder à la ligne du code dans laquelle l'erreur s'est produite.

Erreur de compilateur CSharp

Les messages d'erreur du compilateur C# sont en principe suffisamment clairs et descriptifs, mais si vous ne parvenez pas à identifier le problème, vous pouvez accéder à la page d'aide de ce message en appuyant sur F1 après avoir sélectionné le message dans la liste d'erreurs. La page d'aide contient des informations utiles supplémentaires. Si vous ne parvenez toujours pas à résoudre le problème, posez une question sur l'un des forums ou groupes de discussion C#. Pour accéder à ces forums, cliquez sur Forums MSDN dans le menu ? (Aide).

Remarque :

Si vous obtenez une page d'aide sur une erreur du compilateur qui n'est pas pertinente pour votre erreur particulière, vous pouvez aider Microsoft à améliorer la documentation en envoyant une description du problème. Pour envoyer le message électronique, cliquez sur le lien en bas de la page d'aide qui contient l'erreur.

Configurations Release et Debug

Si vous travaillez encore sur votre projet, vous générerez probablement votre application à l'aide de la configuration Debug car elle permet de consulter la valeur des variables et de contrôler l'exécution dans le débogueur. Vous pouvez également créer et tester des générations dans la configuration release afin de vous assurer que vous n'avez pas introduit des bogues qui se manifestent uniquement sur un type de génération ou un autre. Dans la programmation .NET Framework, de tels bogues sont très rares, mais ils peuvent se produire.

Lorsque vous êtes prêt à distribuer votre application aux utilisateurs finaux, créez une version release. Ce type de version présente une taille largement inférieure et offre généralement des performances nettement supérieures à celles de la configuration Debug correspondante. Vous pouvez définir la configuration de génération dans le volet Générer du Concepteur de projets, ou dans la barre d'outils Générer. Pour plus d'informations, consultez Configurations de génération.

Débogage

Pendant que vous travaillez dans l'éditeur de code, vous pouvez définir à tout moment un point d'arrêt sur une ligne de code en appuyant sur F9. Lorsque vous appuyez sur F5 pour exécuter votre application dans le débogueur Visual Studio, l'application s'arrête sur cette ligne et vous pouvez consulter la valeur d'une variable donnée, observer comment ou quand l'exécution sort d'une boucle, parcourir le code ligne par ligne en appuyant sur F10 ou définir des points d'arrêt supplémentaires.

Détail d'un point d'arrêt CSharp

Vous pouvez également définir des points d'arrêt conditionnels qui arrêteront l'exécution seulement si une condition spécifiée est rencontrée. Les points de trace sont semblables aux points d'arrêt sauf qu'ils n'arrêtent pas l'exécution, mais écrivent simplement la valeur d'une variable spécifiée dans la fenêtre de sortie. Pour plus d'informations, consultez Points d'arrêt et points de trace.

Lorsque l'exécution est arrêtée sur un point d'arrêt, vous pouvez suspendre le pointeur sur toute variable dans la portée pour consulter les informations relatives à cette variable. L'illustration suivante affiche un conseil sur les données dans le débogueur :

Datatip dans le débogueur

Vous pouvez exécuter pas à pas votre code une ligne à la fois en appuyant sur F10 après l'arrêt du débogueur sur un point d'arrêt. Vous pouvez même résoudre certains types d'erreurs dans votre code et continuer à déboguer sans devoir vous arrêter et recompiler votre application.

Le débogueur Visual Studio est un outil puissant et il est recommandé de prendre le temps de lire la documentation afin de bien comprendre différents concepts comme Modifier & Continuer, Affichage des données dans le débogueur, Visualiseurset Débogage juste-à-temps.

Voir aussi

Tâches

Comment : définir des configurations Debug et Release

Comment : déboguer le code dans l'Éditeur

Référence

System.Diagnostics

Autres ressources

Visual C#

Utilisation de l'IDE de Visual C#

Préparation du débogage : types de projets C# et Visual Basic

Paramètres et préparation du débogage