5

Ich schreibe gerade einen Compiler, der JIT-artige EXE von C# erzeugt (schreibt sich selbst neu), gibt es trotzdem Visual Studio und seinen Debugger zu erkennen, wie ich es erstellen will (mit meinem Compiler) und die Ausgabe debuggen?Kann ich meinen eigenen JIT Interpreter Compiler für C# erstellen und in Visual Studio verwenden?

Meine Compiler-Ausgabe ist EXE, aber es enthält keine MSIL, es enthält meine Zwischensprache, und der Rest des Inhalts ist die JIT in C++ geschrieben. (Das C++ liest sich selbst \ EXE und führt aus)

Ich bin mir bewusst, dass es nicht magisch ist, es kompatibel zu machen; Ich bin hier, um eine klare Antwort zu bekommen, was auch immer möglich ist und Hinweise zu beginnen; z.B. Schreiben Sie eine C++ - DLL mit solchen Funktionen und Parametern und geben Sie den DLL-Pfad zu den Debugger-Parametern von Visual Studio, oder zeigen Sie mir einfach auf MSDN. (Ich habe null vielversprechende Ergebnisse von Google)

Antwort

7

Es scheint, dass das, was Sie tun möchten, möglich ist. Die entsprechenden Abschnitte der MSDN wäre:

Die Visual Studio integrierte Entwicklungsumgebung (IDE) bietet die Benutzeroberfläche (UI) für Standardkomponenten, wie Compiler, Redakteure und Debugger. Features wie Visual C++ und Visual Basic, die in Visual Studio enthalten sind, sind selbst Erweiterungen der IDE. Das Visual Studio SDK bietet Tools, Beispiele, Assistenten, Designer und die Dokumentation , mit der Sie Ihre eigenen Anwendungen entwickeln können, die die IDE erweitern und nahtlos in die IDE integrieren.

Achten Sie besonders auf:

Visual Studio einen vollständig interaktiven Quellcode-Debugger enthält, ein leistungsfähiges und einfach zu bedienendes Werkzeug bereitstellt unten für die Verfolgung Fehler in Ihr Programm. Der Debugger unterstützt Visual Basic, C#, C/C++ und JavaScript. Mit dem Visual Studio SDK, das ist, das von dem Microsoft Download Center verfügbar ist, können jedoch andere Programmierung Sprachen in dem Debugger mit den gleichen reichen Features unterstützt werden.

Beachten Sie auch die Language Services Abschnitt - das beschreibt bedeutet, Unterstützung für eine neue Sprache zu Visual Studio hinzufügen. Insbesondere können Sie auch Debug-Unterstützung für die Sprache hinzufügen.

sehen: Language Service Support For Debugging

Die Art der Compiler, was Sie Debuggen für Ihre Sprache zu implementieren tun müssen, bestimmt. Wenn Ihr Compiler auf das Betriebssystem Windows abzielt und eine PDB-Datei schreibt, können Sie Programme mit der systemeigenen Code-Debugging-Engine debuggen, die in Visual Studio Studio integriert ist.Wenn Ihr Compiler erzeugt Zwischen Microsoft Sprache (MSIL), können Sie Programme debuggen mit der Code-Debugging-Engine verwaltet, die auch in Visual Studio integriert ist. Wenn Ihr Compiler ein proprietäres Betriebssystem oder eine andere Laufzeitumgebung zielt, müssen Sie Ihre eigene Debugging-Engine schreiben.

Hervorhebung von mir - das heißt: Sie können debug alles, was Sie wollen, aber Sie werden den Debugger selbst schreiben müssen.

Sie möchten wahrscheinlich die Visual Studio SDK herunterladen.