2009-09-17 9 views
8

Ich möchte ein Kompilierungssymbol wie DEBUG verwenden, außer einem anderen Namen, und habe es mit einer Lösung verknüpft, kein Projekt, so dass es für alle gilt Lösungsprojekte.Visual Studio 2008 - Bedingtes Kompilierungssymbol für die Lösung, nicht Projekt

Anstatt das gleiche Symbol in mehreren Projekten zu definieren, gibt es eine Möglichkeit, ein Symbol einmal zu definieren, das über VS2008 auf die gesamte Lösung angewendet wird?

Antwort

0

Eine Option, die Sie verwenden können, besteht darin, eine CS-Datei an einem Speicherort mit #define MYSYMBOL zu erstellen und die Datei mithilfe der Option Als Link hinzufügen zu jedem Projekt in Ihrer Lösung hinzuzufügen. Dies würde es Ihnen ermöglichen, einen einzelnen Punkt für die Definition von Symbolen/gemeinsamen Informationen zu haben.

+1

Dies funktioniert nicht in C#, weil (von MSDN): Das Symbol bleibt definiert, bis eine # Undef-Direktive für das gleiche Symbol verarbeitet wird, oder bis das Ende der Quelldatei erreicht ist. Dies hat zur Folge, dass #define- und #undef-Anweisungen in einer Quelldatei keine Auswirkungen auf andere Quelldateien im selben Programm haben. –

6

Sie können eigene Build-Konfigurationen mit dem Visual Studio Configuration Manager definieren und das Symbol in der Projektbaukonfiguration definieren. Es ist einfach und funktioniert auch für C# (siehe meinen Kommentar zu Simon Wilsons Antwort). Klicken Sie dazu einfach im Solution Configuration Manager auf "Neue Projektkonfigurationen erstellen". Dann können Sie die Symbole in jedem Projekt für die neue Build-Konfiguration definieren.

Verwandte Themen