Laden...

[gelöst] VS10 - C# - Buildereignis vermisst: Reihenfolge des Compilierens mehrere Projekte

Letzter Beitrag vor 12 Jahren 3 Posts 1.183 Views
[gelöst] VS10 - C# - Buildereignis vermisst: Reihenfolge des Compilierens mehrere Projekte

Moin,

Situation

Ich habe ein externes Projekt E. Dies stellt mir eine DLL mit verschiedenen Interfaces bereite (E-I) und eine DLL mit diversen Funktionen (E-F). Dann gibt es zu diesem Projekt Plugins (E-P1, E-P2, ... [E-Px]). Diese benötigen nur E-I.

Dann habe ich mein Hauptprojekt H, welches E-I und E-F benötigt. Die Plugins selber liegen in einem Unterverzeichnis von H. E-F reicht mir die Plugins E-Px die ich benötige durch und kümmert sich um die Instanzierung etc.

Problem

Das Problem ist das nach dem Build die Plugins E-Px in das entsprechende Unterverzeichnis von H kopiert werden müssen. Da aber nicht sichergestellt ist das E-Px vor H compiliert werden, kann ich in H das Post-Build-Event nicht verwenden. Sicher ist nur das E-I, dann E-F als Erstes (und Zweites) compiliert werden. Da H die Plugins E-Px auf Grund der Architektur gar nicht kennen darf, wird beim Build auch nichts kopiert.

Unter MonoDevelop kann ich im entsprechenden Pre-Run-Event ein Bash-Script starten das mir die DLL in das entsprechende Unterverzeichnis vor dem Programm start kopiert. Eben jenes Event fehlt mir für C# (oder ich finde es nicht). C++ hat noch einen "benutzerdefinierten Buildschritt", welcher eben genau das ist was ich für C# benötige.

hand, mogel

Da aber nicht sichergestellt ist das E-Px vor H compiliert werden Dann stell das doch einfach sicher. In den Eigenschaften der Projektmappe kannst du einstellen, welchen Projekt von welchen abhängig ist und damit steuern, dass die Plugins vor dem Hauptprojekt erzeugt werden. Dann kannst du ganz normal mit den Buildevents arbeiten

Baka wa shinanakya naoranai.

Mein XING Profil.

Moin,

ich erinnerte mich dunkel....

In den Eigenschaften der Projektmappe kannst du einstellen, welchen Projekt von welchen abhängig ist [...]

Das Stichwort war "Projektabhängigkeiten" und ist unter "Projekt" und NICHT unter "Erstellen" zu suchen. Das letzte mal als ich das nutze war VS2003.

danke, mogel