2009-07-09 5 views
2

Gibt es eine Möglichkeit, die PDB-Datei mit dem neuen Quellspeicherort zu aktualisieren? Ich habe ein Projekt, das zu einigen Bibliotheken verbindet, die auf einer anderen Maschine gebaut werden und mit der PDB-Datei debuggebaut werden. Ich kann in den Dateien, die in den Bibliotheken kompiliert werden, keinen Haltepunkt setzen. Diese Bibliotheken brauchen mehr als 4 Stunden, um sie zu bauen, also möchte ich sie nicht auf meinem Rechner bauen. Gibt es einen Weg, wo ich den Compiler die neuen Source-Pfade verwenden kann. Ich benutze VS 2005 pro C++.Aktualisieren von PDB-Dateien ohne Neuaufbau

Dank Amit

Antwort

1

Statt die .pdb Dateien modifizieren, um einzustellen, wo Sie Ihre Quelle haben, sollten Sie in der Lage sein, das Debugger zu machen den neuen Quellpfad zu sehen. Suchen Sie here für Anweisungen dazu in Visual Studio und here für Anweisungen dazu in WinDbg.

Eine weitere Frage zu StackOverflow: Best Visual Studio 2008 Debugging Tutorial.

+0

Hallo Jared, Vielen Dank für Ihre Antwort. Ich habe Ihre Lösung versucht, aber ich kann immer noch keinen Unterbrechungspunkt hinzufügen. Können Sie mich auf einen Artikel oder eine Ressource verweisen, wo ich eine detaillierte Arbeit des Debuggers erhalten kann, wie es die PDB-Datei verwendet. Hast du noch andere Vorschläge? Nochmals vielen Dank für Ihre Hilfe. Cheers Amit – amit

+0

Ich habe meine Antwort mit einem Link zu einer anderen StackOverflow-Frage aktualisiert, die viele Links zu Tutorials enthält. Ich habe gesehen, was du erlebst, aber ich kann mich nicht erinnern, was ich getan habe, um es zu "überzeugen", wo die Quelle war. Eine Strategie könnte darin bestehen, einen Haltepunkt für eine Funktion festzulegen, den Sie anhand des Namens angeben können, anstatt auf die Quelle zu klicken. –

1

Entnimmt der Debugger die .pdb Dateien vom falschen Ort? Haben Sie eine Kopie der .pdb Dateien, die mit den Binärdateien übereinstimmen (d. H. .exe, .dll), die Sie ausführen? Beachten Sie, dass die Dateien .pdb nur verwendet werden können, wenn sie zur gleichen Zeit wie die exaktenBinärdateien erstellt wurden, die Sie gerade ausführen.

Versuchen Sie Folgendes:

  1. Benennen Sie die (veraltete) .pdb-Datei, die der Debugger laden will, so wird der Debugger versuchen nicht mehr, um ihn abzuholen.

  2. Gehen Sie zu Tools->Options->Debugging->Symbols und fügen Sie den Speicherort der Symboldatei (.pdb) der Liste hinzu.

  3. Wenn der Debugger bereits angeschlossen ist, klicken Sie mit der rechten Maustaste auf das Modul in der Liste "Module" und klicken Sie auf "Symbole laden". Dadurch werden die Symbole aus dem eingegebenen Pfad erneut geladen.

Auch wenn Sie den Code kennen ist genau das gleiche, aber Ihre .pdb Datei, die Sie verwenden, nicht die Binärdateien überein, da sie erstellt wurden, während andere baut, versuchen un-Überprüfung der folgenden Kontrollkästchen:

Tools->Options->Debugging->Require source files to exactly match the original version

Verwandte Themen