Frage

Hintergrund . Ich möchte ein eigenes VB-Compiler erstellen, das "Original" Compiler erstreckt, zu meinen benutzerdefinierten Kompilierung-Attribute verarbeiten

Frage : Nachdem ich meine benutzerdefinierten Compiler erstellt haben, und ich habe eine ausführbare Datei fähig bekam VB-Code über die Standard-Kommandozeilen-Schnittstelle zu kompilieren, wie integriere ich diesen Compiler mit dem Visual Studio-IDE? (So ??dass „Übersetzen“ oder „Build“ drückt, wird die Verwendung meines Compiler anstelle der Standard-Compiler machen).

Bearbeiten : (korrigiert mich wenn ich falsch liege)

Von den Reaktionen hier sehe ich diese Frage ist ein bisschen schockierend, so dass ich weiter werde meine Bedürfnisse und Hintergrund erklären: .NET bietet uns einen großen Mechanismus namens Attribute. Soweit ich verstehe, so dass Attribute gelten ihre beabsichtigten Verhalten auf das Element zugeschrieben (Montag, Modul, Klassen-, Methoden-, etc.) - Attribute auf reflektiert werden müssen. Also hier der eigentliche Trick reflektiert und Verhalten an der richtigen Stelle anwenden.

Lets take Serialisierung zum Beispiel: Wir haben eine Klasse mit dem Attribut Serializable dekorieren. Wir geben dann eine Instanz der Klasse der Serialize-Methode der Formatierer. Der Formatierer reflektiert die Instanz, zu überprüfen, ob es das Attribut Serializable hat, und entsprechend zu handeln.

Wenn wir nun die Synchronisation, Fahnen, Veraltet und CLSCompliant Attribute untersuchen, dann ist die eigentliche Frage ist: wer denkt über sie? Zumindest in einigen Fällen hat es sich der Compiler (und / oder IDE) sein. Daher scheint es, dass, wenn ich benutzerdefinierte erstellen möchte Attribute, die Änderung das Verhalten des Elements unabhängig von einem bestimmten Verbraucher, muß ich die Compiler auf sich bei der Kompilierung zu reflektieren erweitern.

Natürlich sind dies nicht meine persönlichen Einblicke: das Buch „ Applied .NET Attribute “bietet ein komplettes Beispiel ein benutzerdefiniertes Attribut und einen benutzerdefinierten C # Compiler zu erstellen, auf das Attribut bei der Kompilierung widerzuspiegeln (das Beispiel verwendet wird, zu implementieren‚java-Stil geprüfte Ausnahmen‘).

War es hilfreich?

Lösung

Check out "MSBuild Überblick" unter http://msdn.microsoft. com / en-us / library / ms171452.aspx . Visual Studio-Projekte sind MSBuild Projekte. Ich glaube, dass alles, was Sie zu tun haben würde, ist, ein paar kleinere Änderungen vornehmen. Ich habe es nicht für einen Compiler getan, aber ich habe es mit ILMerge nach dem Kompilieren und es funktioniert super. Nahtlose und sogar möglich, die fusionierte Baugruppen zu debuggen.

Andere Tipps

Check out " Buildaction Property " und " Custom Property “.

Vor einigen Jahren las ich einen hervorragenden Artikel über einen benutzerdefinierten Compiler erstellen, registrieren sie, und diese Eigenschaften einstellen. Ich kann nicht den Artikel jetzt finden, aber das sollte Ihnen den Start.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top