Was ist eine PDB-Datei und wie kann ich sie aus dem Release-Ordner ausschließen, wenn ich meine Lösung neu erstelle?
Was ist eine PDB-Datei und wie kann ich sie aus dem Release-Ordner ausschließen, wenn ich meine Lösung neu erstelle?
Antworten:
Eine PDB-Datei enthält Informationen, mit denen der Debugger arbeiten kann. In einem Release-Build sind ohnehin weniger Informationen enthalten als in einem Debug-Build. Wenn Sie jedoch möchten, dass es überhaupt nicht generiert wird, gehen Sie zu den Build-Eigenschaften Ihres Projekts, wählen Sie die Release-Konfiguration aus, klicken Sie auf "Erweitert ..." und wählen Sie unter "Debug-Info" die Option "Keine".
Ich hatte mir ursprünglich die Frage " Benötige ich eine PDB-Datei, die auf dem Computer meines Kunden bereitgestellt wurde? " Gestellt und nach dem Lesen dieses Beitrags beschlossen, die Datei auszuschließen.
Bis heute hat alles gut funktioniert, als ich herausfinden wollte, warum in einem Meldungsfeld mit einem Exception.StackTrace
die Datei- und Zeilennummerninformationen fehlten - erforderlich für die Fehlerbehebung bei der Ausnahme. Ich habe diesen Beitrag erneut gelesen und das wichtigste Informationsnugget gefunden: Obwohl der PDB für die Ausführung der App nicht erforderlich ist, müssen die Datei- und Zeilennummern in der StackTrace
Zeichenfolge vorhanden sein. Ich habe die PDB-Datei in den ausführbaren Ordner aufgenommen und jetzt ist alles in Ordnung.
accepted answer
hier nicht erwähnen sollten.
PDB ist eine Abkürzung für P rogramm D ata B ase. Wie der Name schon sagt, handelt es sich um ein Repository (persistenter Speicher wie Datenbanken), in dem Informationen verwaltet werden, die zum Ausführen Ihres Programms im Debug-Modus erforderlich sind. Es enthält viele wichtige relevante Informationen, die beim Debuggen Ihres Codes (in Visual Studio) erforderlich sind, z. B. an den Stellen, an denen Sie Haltepunkte eingefügt haben, an denen der Debugger in Visual Studio voraussichtlich brechen wird.
Dies ist der Grund, warum Visual Studio häufig die Haltepunkte nicht erreicht, wenn Sie die *.pdb
Dateien aus Ihren Debug-Ordnern entfernen . Der Visual Studio-Debugger kann Ihnen mithilfe von *.pdb
Dateien auch die genaue Zeilennummer der Codedatei mitteilen, bei der eine Ausnahme in einem Stack-Trace aufgetreten ist . Daher sind PDF-Dateien für Entwickler beim Debuggen eines Programms ein Segen.
Im Allgemeinen wird nicht empfohlen, die Generierung von *.pdb
Dateien auszuschließen . Vom Standpunkt der Produktionsfreigabe aus sollten Sie die PDF-Dateien erstellen, aber nicht im Produktinstallationsprogramm an den Kunden senden. Bewahren Sie alle generierten PDB-Dateien auf einem Symbolserver auf, von dem aus sie bei Bedarf in Zukunft verwendet / referenziert werden können. Speziell für Fälle, in denen Sie Probleme wie Prozessabstürze debuggen. Wenn Sie mit der Analyse der Crash-Dump-Dateien beginnen und Ihre *.pdb
während des Erstellungsprozesses erstellten Originaldateien nicht erhalten bleiben, kann Visual Studio die genaue Codezeile, die den Absturz verursacht, nicht erkennen .
Wenn Sie die Generierung von *.pdb
Dateien für eine Version weiterhin deaktivieren möchten, gehen Sie zu den Eigenschaften des Projekts -> Registerkarte "Erstellen" -> Klicken Sie auf die AdvancedSchaltfläche -> Wählen Sie none
aus dem Dropdown-Feld "Debug-Info" -> Drücken Sie, OKwie im folgenden Schnappschuss gezeigt .
Hinweis : Diese Einstellung muss für die Build-Konfigurationen "Debug" und "Release" separat vorgenommen werden.
Eine PDB-Datei enthält Informationen, die vom Debugger verwendet werden. Es ist nicht erforderlich, Ihre Anwendung auszuführen, und es muss nicht in Ihrer veröffentlichten Version enthalten sein.
Sie können die Erstellung von PDF-Dateien in Visual Studio deaktivieren. Wenn Sie über die Befehlszeile oder ein Skript erstellen, lassen Sie den /Debug
Schalter weg .
Die Programm-Debug-Datenbankdatei (pdb) ist ein Dateiformat von Microsoft zum Speichern von Debugging-Informationen.
Wenn Sie ein Projekt mit Visual Studio oder einer Eingabeaufforderung erstellen, erstellt der Compiler diese Symboldateien.
Überprüfen Sie Microsoft Docs