Erstellen von Debugsymbole für eine Visual C++-Anwendung

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 291585 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Alles erweitern | Alles schließen

Zusammenfassung

Möglicherweise müssen Sie Symbole erstellen, die Sie beim Debuggen von Speicherabbilddateien oder beim Durchführen von live Debuggen mithilfe der Microsoft Debugging Tools für Windows verwenden können. Zum Downloaden dieser Tools die folgenden Microsoft-Website:
http://www.microsoft.com/whdc/devtools/debugging/default.mspx
Symbole sind Daten, mit denen den Debugger Informationen Quelle und der Zeilennummer, Variablen kennen, die in Ihrer Anwendung verwendet werden und Daten mit Typinformationen für Ihr Programm.

Dieser Artikel beschreibt die Symboldateien, insbesondere PDB-Dateien erstellen, wenn Sie eine veröffentlichte Version von Visual C++-Anwendungen erstellen. Bei der Arbeit mit Microsoft Product Support Services werden Sie möglicherweise aufgefordert, bieten diese Dateien zu der Support-Mitarbeiter Supportvorfall betreut Sie die Ursache eines Problems zu bestimmen, das bei Ihnen auftritt. Aus diesem Grund wird empfohlen Symboldateien mit jeder spezifischen veröffentlichten Version der Anwendung zu erstellen.

In diesem Artikel wird davon ausgegangen, dass Sie mit dem Erstellen von Anwendungen mithilfe von Microsoft Visual C++ vertraut sind. Finden Sie in der Visual C++-Dokumentation zu definitive ausführliche Informationen zum Erstellen von Symboldateien.

Weitere Informationen

Es gibt zwei Arten von Builds: freizugeben und zu debuggen. Den Buildtyp immer auf Version für Builds, die an Kunden geliefert werden festgelegt. Das Build Debuggen wird häufig während der Entwicklungsphase der Anwendung verwendet. Beide Arten von Builds können gedebuggt werden müssen, und beide Arten von Builds Symbole, die Sie Debuggen. Ein wichtiger Unterschied besteht darin, dass die Einstellung Version in Visual C++ auf Compileroptimierung und das Debuggen Einstellung Schaltet Compileroptimierung deaktiviert. Wenn die Compileroptimierung aktiviert ist, wird die Anwendung schneller ausgeführt. Es ist jedoch nicht als einfach zu Schritt durch den Code, da die Quellcodezeilen nicht in der exakten Reihenfolge kompiliert werden, die Sie im Quellcode angezeigt werden. Daher ist es während der Entwicklungsphase eines Projekts, leichter zu Debuggen ein debug -Builds.

Sowohl Visual C++ 6.0 als auch Visual C++ .NET in in Entwicklungsumgebungen, können Sie einen Debugbuild indem Debuggen wie der Buildtyp und Sie können einen Releasebuild erstellen, indem Sie als den Buildtyp Version auswählen. Wenn Sie nicht die Visual C++ verwenden Entwicklungsumgebungen, Sie müssen wissen was Compiler und Linkeroptionen fest.

Ändern Sie des folgenden Optionen auf der CL.exe des Builds kompilieren Compilers, um das Debuggen von einem Releasebuild für Visual C++ .NET oder Visual C++ 6.0 zu aktivieren:

Compiler

  • Aktivieren Sie / Z7 für Visual c++.NET
  • Aktivieren von/Zi für Visual C++ 6.0
  • Aktivieren Sie / O2
Weitere Informationen über die Compiler-Option die folgenden Microsoft Developer Network (MSDN)-Website:
http://msdn.microsoft.com/en-us/library/aa236704.aspx

Linker

  • Wählen Sie / INCREMENTAL: NO
  • Wählen Sie / DEBUG: Ja;
  • Wählen Sie / OPT: REF
  • Wählen Sie / OPT: ICF
Weitere Informationen über die Linker-Option die folgenden MSDN-Website:
http://msdn.microsoft.com/en-us/library/aa270751.aspx

Aktivieren Sie in einem Releasebuild in Visual C++ 6.0-Debuggen

Gehen Sie folgendermaßen vor um das Debuggen in einem Releasebuild in einer Visual C++ 6.0-Entwicklungsumgebung zu aktivieren,
  1. Klicken Sie im Menü Projekt auf Einstellungen .
  2. Klicken Sie auf Win32 Release-Konfiguration .
  3. Klicken Sie auf der Registerkarte C/c++ auf Allgemein , und legen Sie dann die folgenden:
    • Legen Sie Optimierung , um Geschwindigkeit maximieren oder auf Größe minimieren .
    • Legen Sie Debug Informationen Programmdatenbank .
  4. Klicken Sie auf der Registerkarte Verbindung auf Allgemein , und legen Sie dann die folgenden:
    • Stellen Sie sicher, dass Sie Debuginformationen generieren auswählen klicken.
    • Stellen Sie sicher, dass das Kontrollkästchen Inkrementelles Verknüpfen deaktivieren.
  5. Die Project-Optionen direkt bearbeiten, und fügen / opt: Ref, Icf .
Sie können jetzt Ihre Veröffentlichung Build Anwendung debuggen. Suchen das Problem durch den Code bis gefunden werden, wo der Fehler auftritt, Schritt und dann bestimmen die falschen Parameter oder den Code. Wenn ein Programm in einem Debugbuild funktioniert jedoch in einem Releasebuild fehlschlägt, ist es wahrscheinlich, dass eine der Compileroptimierungen einen Defekt im Quellcode offen legt.

Um einen Debugbuild zu erstellen, verwenden Sie die folgenden Optionen:

Compiler

  • Aktivieren/Zi
  • / Od aktivieren

Linker

  • / debug
  • / incremental: Ja
Nachdem Sie die Schritte ausgeführt haben und die Anwendung neu kompilieren, müssen Sie die PDB-Dateien in entweder den \Debug oder das Verzeichnis \Release des Projekts, je nach Konfiguration erstellen.

Informationsquellen

Weitere Informationen finden Sie in des folgenden Buches:

Robbins, John. Debuggen von Anwendungen . Microsoft Press.

Eigenschaften

Artikel-ID: 291585 - Geändert am: Montag, 27. November 2006 - Version: 4.6
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Visual C++ 6.0 Enterprise Edition
  • Microsoft Visual C++ .NET 2003 Standard Edition
  • Microsoft Visual C++ .NET 2002 Standard Edition
Keywords: 
kbmt kbdebug kbhowto kbsymbols KB291585 KbMtde
Maschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 291585
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com