Grundlagen der Buildkonfiguration

Sie benötigen Buildkonfigurationen, wenn Sie Ihre Projekte mit unterschiedlichen Einstellungen kompilieren müssen. Debug und Release beispielsweise sind Buildkonfigurationen, bei denen zum Kompilieren verschiedene Compileroptionen verwendet werden. Eine Konfiguration ist aktiv und wird in der Befehlsleiste oben in der IDE angezeigt.

Screenshot: Aktive Konfiguration auf der Hauptsymbolleiste von Visual Studio

Screenshot: Aktive Konfiguration auf der Hauptsymbolleiste von Visual Studio

Konfiguration und Plattform steuern, wo die kompilierten Ausgabedateien gespeichert werden. Wenn Visual Studio ein Projekt kompiliert, wird die Ausgabe in der Regel in einem Projektunterordner platziert, der gemäß der aktiven Konfiguration benannt ist (z. B. bin/Debug/x86). Dieses Verhalten kann jedoch geändert werden.

Sie können eigene Buildkonfigurationen auf Projektmappen- und Projektebene erstellen. Die Projektmappenkonfiguration bestimmt, welche Projekte im Build enthalten sind, wenn diese Konfiguration aktiv ist. Es werden nur diejenigen Projekte kompiliert, die in der aktiven Projektmappenkonfiguration angegeben sind. Wenn im Konfigurations-Manager mehrere Plattformen ausgewählt werden, werden alle Projekte für diese Plattform kompiliert. Die Projektkonfiguration bestimmt, welche Buildeinstellungen und Compileroptionen beim Kompilieren des Projekts verwendet werden.

Konfiguration können mit Configuration Manager ausgewählt, geändert oder gelöscht werden. Wählen Sie zum Öffnen in der Menüleiste Erstellen>Konfigurations-Manager aus, oder geben Sie im Suchfeld einfach den Begriff Konfiguration ein. Sie können auch die Liste Projektmappenkonfigurationen auf der Symbolleiste Standard zum Auswählen einer Konfiguration verwenden, oder Sie öffnen den Configuration Manager.

Screenshot: Dialogfelds „Konfigurations-Manager“

Hinweis

Falls auf der Symbolleiste keine Einstellungen für Projektmappenkonfigurationen verfügbar sind und Sie nicht auf den Konfigurations-Manager zugreifen können, liegt das möglicherweise an der Verwendung von Visual Basic-Entwicklungseinstellungen. Weitere Informationen finden Sie unter Vorgehensweise: Verwalten von Buildkonfigurationen mit aktivierten Visual Basic Developer-Einstellungen.

Standardmäßig sind die Konfigurationen Debug und Release in Projekten enthalten, die mithilfe von Visual Studio-Vorlagen erstellt werden. Eine Debug-Konfiguration unterstützt das Debuggen einer App, und mit einer Release-Konfiguration wird eine Version der App kompiliert, die bereitgestellt werden kann. Weitere Informationen finden Sie unter Vorgehensweise: Festlegen von Debug- und Releasekonfigurationen. Sie können zudem benutzerdefinierte Projektmappenkonfigurationen und Projektkonfigurationen erstellen. Weitere Informationen finden Sie unter Vorgehensweise: Erstellen und Bearbeiten von Konfigurationen.

Projektmappenkonfigurationen

Mit einer Projektmappenkonfiguration wird festgelegt, wie bestimmte Projekte in der Projektmappe erstellt und bereitgestellt werden. Um eine Projektmappenkonfiguration zu ändern oder eine neue, in Configuration Manager, unter Konfiguration der aktuellen Projektmappe zu definieren, wählen Sie Neu oder Bearbeiten aus.

Jeder Eintrag im Feld Projektkontexte in einer Projektmappenkonfiguration stellt ein Projekt der Projektmappe dar. Für jede Kombination von Konfiguration der aktuellen Projektmappe und Aktive Projektmappenplattform können Sie die Verwendungsart des Projekts festlegen.

Wenn Sie eine neue Projektmappenkonfiguration definieren und das Kontrollkästchen Neue Projektkonfigurationen erstellen aktivieren, erstellt Visual Studio automatisch eine neue Projektkonfiguration in allen Projekten. Ebenso erstellt Visual Studio die neue Plattformoption in allen Projekten, wenn Sie eine neue Projektmappenplattform definieren und das Kontrollkästchen Neue Projektplattformen erstellen aktivieren. Wenn Sie ein Projekt hinzufügen, das auf neue Plattform ausgerichtet ist, wird diese Plattform in Visual Studio der Liste der Projektmappenplattformen hinzugefügt und in allen Projekten als Option verfügbar gemacht. Sie können die Einstellungen für jedes Projekt ändern, in Fällen, in denen Plattformen von einigen Projekten nicht benötigt oder unterstützt werden.

Die aktive Projektmappenkonfiguration stellt der IDE auch Kontext bereit. Wenn Sie z.B. an einem Projekt arbeiten und in der Konfiguration angegeben ist, dass es für ein mobiles Gerät erstellt wird, werden in der Toolbox nur die Elemente angezeigt, die in einem Projekt für ein mobiles Gerät verwendet werden können.

Projektkonfigurationen

Die Konfiguration und die Plattform, auf die ein Projekt ausgerichtet ist, legen gemeinsam fest, welche Buildeinstellungen und Compileroptionen beim Kompilieren verwendet werden sollen. Ein Projekt kann für jede Kombination aus Konfiguration und Plattform über unterschiedliche Einstellungen verfügen. Um die Eigenschaften eines Projekts zu ändern, öffnen Sie das Kontextmenü für das Projekt im Projektmappen-Explorer, und klicken Sie dann auf Eigenschaften. Wählen Sie im Projekt-Designer oben auf der Registerkarte Build eine aktive Konfiguration aus, um die zugehörigen Buildeinstellungen zu bearbeiten.

Screenshot: Konfigurationen des Projekt-Designers

Screenshot: Konfigurationen des Projekt-Designers

So ordnet Visual Studio Projektkonfigurationen Lösungskonfigurationen zu

Wenn Sie eine neue Lösungskonfiguration definieren und keine Einstellungen aus einer vorhandenen Lösung kopieren, verwendet Visual Studio die folgenden Kriterien, um die vorhandenen Projektkonfigurationen der neuen Lösungskonfiguration zuzuordnen. Die Kriterien werden in der angezeigten Reihenfolge ausgewertet.

  1. Wenn der Konfigurationsname für ein vorhandenes Projekt (<Konfigurationsname><Plattformname>) mit dem Namen der neuen Projektmappenkonfiguration übereinstimmt, wird diese Konfiguration verwendet. In Konfigurationsnamen wird die Groß-/Kleinschreibung nicht beachtet.

  2. Wenn das Projekt über einen Konfigurationsnamen verfügt, in dem der der Namensteil der Konfiguration der neuen Projektmappenkonfiguration entspricht, wird diese Konfiguration unabhängig des Plattformteils verwendet.

  3. Gibt es auch danach noch keine Übereinstimmung, wird die erste im Projekt aufgeführte Konfiguration verwendet.

So ordnet Visual Studio Lösungskonfigurationen neuen Projektkonfigurationen zu

Wenn Sie eine Projektkonfiguration erstellen (indem Sie in Configuration Manager im Dropdownmenü der Spalte Konfiguration für dieses Projekt die Option Neu auswählen) und das Kontrollkästchen Neue Projektmappenkonfigurationen erstellen aktivieren, wird in Visual Studio nach einer gleich benannten Projektmappenkonfiguration gesucht, um das Projekt auf jeder davon unterstützten Plattform zu erstellen. In einigen Fällen werden vorhandene Projektmappenkonfigurationen von Visual Studio umbenannt, oder es werden neue definiert.

Visual Studio verwendet die folgenden Kriterien, um Lösungskonfigurationen Projektkonfigurationen zuzuordnen:

  • Wenn in einer Projektkonfiguration keine Plattform oder nur eine einzige Plattform angegeben ist, wird entweder eine Projektmappenkonfiguration gesucht, deren Name dem der neuen Projektkonfiguration entspricht, oder es wird eine solche hinzugefügt. Der Standardname dieser Projektmappenkonfiguration enthält keinen Plattformnamen und weist das Format <Name_der_Projektkonfiguration> auf.

  • Wenn von einem Projekt mehrere Plattformen unterstützt werden, wird eine Projektmappenkonfiguration für jede unterstützte Plattform gesucht oder hinzugefügt. Der Name jeder Projektmappenkonfiguration umfasst sowohl den Namen der Projektkonfiguration als auch den Plattformnamen und verwendet das Format <Name_der_Projektkonfiguration><Plattformname>.

Auswirkungen von Konfigurationen auf den Build

Wenn Sie eine Projektmappe mit dem Befehl Erstellen>Projektmappe erstellen kompilieren, erstellt Visual Studio nur die aktive Konfiguration. Alle in dieser Projektmappenkonfiguration angegebenen Projekte werden erstellt, und die einzige erstellte Projektkonfiguration ist die in der aktiven Projektmappenkonfiguration und der aktiven Projektmappenplattform angegebene Konfiguration, die in der Symbolleiste von Visual Studio angezeigt wird. Beispielsweise Debug und x86. Weitere definierte Konfigurationen und Plattformen werden nicht erstellt.

Wenn Sie mehrere Konfigurationen und Plattformen in einer Aktion erstellen möchten, können Sie die Option Erstellen>Batch erstellen in Visual Studio verwenden. Um auf dieses Feature zuzugreifen, drücken Sie STRG+Q, um das Suchfeld zu öffnen, und geben Batch build ein. Der Befehl „Batch erstellen“ ist nicht für alle Projekttypen verfügbar. Weitere Informationen finden Sie unter How to: Gleichzeitiges Erstellen mehrerer Konfigurationen