Festlegen von Debug- und Releasekonfigurationen in Visual Studio

Visual Studio-Projekte verfügen über separate Release- und Debugkonfigurationen für Ihr Programm. Die Debugversion wird zum Debuggen und die Releaseversion für das endgültige Release verwendet.

In der Debugkonfiguration wird Ihr Programm mit vollständigen symbolischen Debuginformationen und ohne Optimierung kompiliert. Die Optimierung gestaltet das Debuggen etwas schwieriger, da die Beziehung zwischen Quellcode und generierten Anweisungen komplexer ist.

Die Releasekonfiguration Ihres Programms verfügt über keine symbolischen Debuginformationen und wird vollständig optimiert. Für verwalteten Code und C++-Code können Debuginformationen abhängig von den verwendeten Compileroptionen in PDB-Dateien generiert werden. Die Erstellung von PDB-Dateien kann hilfreich sein, wenn Sie später Ihre Releaseversion debuggen müssen.

Weitere Informationen zu Buildkonfigurationen finden Sie unter Grundlagen der Buildkonfigurationen.

Sie können die Buildkonfiguration über die Symbolleiste im Menü Build oder über die Eigenschaftenseiten des Projekts ändern. Die Eigenschaftenseiten des Projekts sind sprachspezifisch. Das folgende Verfahren zeigt, wie die Buildkonfiguration über die Symbolleiste und das Menü geändert wird. Weitere Informationen zum Ändern der Buildkonfiguration in Projekten mit verschiedenen Sprachen finden Sie im Abschnitt Verwandte Themen.

Ändern der Buildkonfiguration

Führen Sie zum Ändern der Buildkonfiguration eine der folgenden Aktionen aus:

  • Wählen Sie auf der Symbolleiste im Listenfeld Projektmappenkonfigurationen die Option Debuggen oder Release aus.

    toolbars build configuration

    oder

  • Wählen Sie im Menü Build die Option Konfigurations-Manager und anschließend Debuggen oder Release aus.

Generieren von Symboldateien (PDB-Dateien) für einen Build (C#, C++, Visual Basic, F#)

Sie können Symboldateien (PDB-Dateien) generieren und auswählen, welche Debuginformationen eingeschlossen werden sollen. Bei den meisten Projekttypen werden vom Compiler standardmäßig Symboldateien für Debug- und Releasebuilds generiert. Andere Standardeinstellungen variieren dagegen je nach Projekttyp und Visual Studio-Version.

Wichtig

Der Debugger lädt nur eine PDB-Datei für eine ausführbare Datei, die genau mit der PDB-Datei übereinstimmt, die zum Zeitpunkt der Erstellung der ausführbaren Datei ebenfalls erstellt wurde (das heißt, die PDB-Datei muss die originale PDB-Datei oder eine Kopie der originalen PDB-Datei sein). Weitere Informationen finden Sie unter Warum müssen Debuggersymboldateien exakt den Binärdateien entsprechen, mit denen sie erstellt wurden?.

Diese Optionen werden unter Umständen bei jedem Projekttyp anders festgelegt.

Generieren von Symboldateien für ein C#- oder ASP.NET Core-Projekt (nur .NET Core, .NET 5 oder höher)

Ausführliche Informationen zu Projekteinstellungen für Debugkonfigurationen in C# finden Sie unter Projekteinstellungen für eine C#-Debugkonfiguration. (Für .NET-Projekte in Visual Basic werden Symboldateien genauso konfiguriert wie in .NET Framework.)

  1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt und dann auf Eigenschaften.

  2. Wählen Sie im Seitenbereich die Option Erstellen>Allgemein aus.

  3. Wählen Sie im Abschnitt Code optimieren die Option Debuggen oder Release aus.

  4. Wählen Sie in der Liste Debugsymbole eine der folgenden Einstellungen aus: PDB-Datei, aktuelle Plattform, PBD-Datei, portierbar oder Eingebettet.

    Das portierbare Format ist das neueste plattformübergreifende Format für .NET Core. Weitere Informationen zu den Optionen finden Sie unter Dialogfeld „Erweiterte Buildeinstellungen“ (C#).

    Generate PDBs for builds in .NET

  5. Erstellen Sie das Projekt.

    Die Symboldateien werden vom Compiler im gleichen Ordner erstellt wie die ausführbare Datei oder die Hauptausgabedatei.

Generieren von Symboldateien für ein C#-, ASP.NET- oder Visual Basic-Projekt (.NET Framework)

Ausführliche Informationen zu Projekteinstellungen für Debugkonfigurationen in C# oder Visual Basic finden Sie unter Projekteinstellungen für C#-Debugkonfigurationen bzw. unter Projekteinstellungen für eine Visual Basic-Debugkonfiguration.

  1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt und dann auf Eigenschaften.

  2. Wählen Sie im Seitenbereich die Option Erstellen aus (bzw. Kompilieren in Visual Basic).

  3. Wählen Sie oben in der Liste Konfiguration die Option Debuggen oder Release aus.

  4. Wählen Sie die Schaltfläche Erweitert aus (bzw. die Schaltfläche Erweiterte Kompilierungsoptionen in Visual Basic).

  5. Wählen Sie in der Liste Debuginformationen (bzw. in der Liste Debuginfo generieren in Visual Basic) die Option Vollständig, Nur PDB oder Portierbar aus.

    Das portierbare Format ist das neueste plattformübergreifende Format für .NET Core. Weitere Informationen zu den Optionen finden Sie unter Dialogfeld „Erweiterte Buildeinstellungen“ (C#).

    Generate PDBs for builds in C#

  6. Erstellen Sie das Projekt.

    Die Symboldateien werden vom Compiler im gleichen Ordner erstellt wie die ausführbare Datei oder die Hauptausgabedatei.

Generieren von Symboldateien für ein C++-Projekt

  1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt und dann auf Eigenschaften.

  2. Wählen Sie in der Liste Konfiguration die Option Debuggen oder Release aus.

  3. Wählen Sie im Seitenbereich Linker > Debuggen und anschließend Optionen für Debuginfo generieren aus.

    In den meisten C++-Projekten lautet der Standardwert Debuginformationen generieren (/DEBUG) .

    Ausführliche Informationen zu Projekteinstellungen für Debugkonfigurationen in C++ finden Sie unter Projekteinstellungen für eine C++-Debugkonfiguration.

  4. Konfigurieren Sie Optionen für Programmdatenbankdatei erstellen.

    In den meisten C++-Projekten wird der Standardwert $(OutDir)$(TargetName).pdb verwendet, wodurch PDB-Dateien im Ausgabeordner generiert werden.

    Generate PDBs for builds in C++

  5. Erstellen Sie das Projekt.

    Die Symboldateien werden vom Compiler im gleichen Ordner erstellt wie die ausführbare Datei oder die Hauptausgabedatei.