Je suis en train de développer un simple éditeur C# pour l'un de mes cours universitaires et je dois envoyer un fichier .cs au compilateur et collecter les erreurs (si elles existent) et les afficher dans mon application. En d'autres termes, je veux ajouter un compilateur C# à mon éditeur. Y a-t-il quelque chose comme ça pour le débogueur?Accès aux erreurs et avertissements du compilateur
4
A
Répondre
8
Si vous utilisez le CodeDomProvider
using System.CodeDom;
using System.CodeDom.Compiler;
using Microsoft.CSharp;
// the compilation part
// change the parameters as you see fit
CompilerParameters cp = CreateCompilerParameters();
var options = new System.Collections.Generic.Dictionary<string, string>();
if (/* you want to use the 3.5 compiler*/)
{
options.Add("CompilerVersion", "v3.5");
}
var compiler = new CSharpCodeProvider(options);
CompilerResults cr = compiler.CompileAssemblyFromFile(cp,filename);
if (cr.Errors.HasErrors)
{
foreach (CompilerError err in cr.Errors)
{
// do something with the error/warning
}
}
1
Utilisez la classe System.Diagnostics.Process
pour démarrer un processus générique et collecter les E/S à partir de l'entrée/sortie standard.
Pour ce scénario spécifique, je vous suggère de regarder Microsoft.CSharp.CSharpCodeProvider
classe. Ça va faire la tâche pour vous.
0
Vous pouvez appeler le compilateur C# dans une commande, puis récupérer la sortie.
Check here for more information on building from the command line.
Questions connexes
- 1. Visualiser les avertissements du compilateur
- 2. Avertissements et compilateur SunStudio C++
- 3. Expression régulière pour trouver des avertissements et des erreurs dans la sortie du compilateur
- 4. Erreurs du compilateur sur la page maître
- 5. Interdependent objets provoquant des erreurs du compilateur
- 6. gcc, changer quelques avertissements en erreurs
- 7. avertissements Linker/erreurs après Snow Leopard Upgrade
- 8. Accès aux propriétés du modèle dans Rails
- 9. Erreurs de compilateur à partir du projet Visual C++ simple
- 10. Où puis-je obtenir une liste de toutes les erreurs et avertissements?
- 11. mettre en surbrillance et filtrer (gcc) les messages du compilateur
- 12. Supprimer les avertissements du compilateur à l'aide de aspnet_compiler sur la ligne de commande
- 13. Collections .NET et accès aux méthodes d'objets
- 14. fermeture jQuery et accès aux objets propriété
- 15. Accès aux événements et aux membres dans la page maître
- 16. SunStudio C++ compilateur pragma pour désactiver les avertissements?
- 17. Accès aux objets Json
- 18. accès aux paramètres POST
- 19. Comment éviter les avertissements du compilateur lors de la conversion de valeurs enum en entiers?
- 20. Accès aux partages réseau
- 21. Accès aux listes d'images
- 22. avertissements du compilateur lors de la substitution d'une méthode, mais pas un autre
- 23. Comment se débarrasser des avertissements du compilateur "[un événement] jamais utilisé" dans Visual Studio?
- 24. Comment forcer le compilateur Delphi pour afficher tous les conseils et avertissements
- 25. Comment puis-je dire à mxmlc de traiter les avertissements comme des erreurs?
- 26. Accès aux éléments à l'intérieur du DataTemplate dans WPF
- 27. Existe-t-il un modèle de propagation des détails des erreurs et des avertissements?
- 28. Accès aux propriétés du contrôleur à partir d'une vue
- 29. Accès direct aux cellules TableLayoutPanel
- 30. Accès aux cookies à partir du contrôle Webbrowser