Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 36247|Απάντηση: 2

[Πηγή] vs Τι και γιατί δημιουργούνται αρχεία .pdb

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 16/1/2018 3:43:04 μ.μ. | | |
Σε τι χρησιμεύει ένα αρχείο PDB;

Αρχεία PDB: Τι πρέπει να γνωρίζει κάθε προγραμματιστής

Παράδειγμα σεναρίου ΠΣΠ:

.net/c# Η εξαίρεση σφάλματος log4net δεν καταγράφει την αιτία του αριθμού γραμμής
http://www.itsvse.com/thread-3928-1-1.html
(Πηγή: Αρχιτέκτονας)


Τι είναι ένα αρχείο PDB;

Οι περισσότεροι προγραμματιστές πρέπει να γνωρίζουν ότι τα αρχεία PDB χρησιμοποιούνται για να βοηθήσουν στον εντοπισμό σφαλμάτων λογισμικού. Αλλά πώς ακριβώς λειτουργεί, μπορεί να μην γνωρίζουμε. Αυτό το άρθρο περιγράφει την αποθήκευση και τα περιεχόμενα των αρχείων PDB. Περιγράφει επίσης πώς το πρόγραμμα εντοπισμού σφαλμάτων βρίσκει το αρχείο PDB που αντιστοιχεί στο binay και πώς το πρόγραμμα εντοπισμού σφαλμάτων βρίσκει το αρχείο πηγαίου κώδικα που αντιστοιχεί στο binay. Αυτό το άρθρο απευθύνεται σε όλους τους εγγενείς και διαχειριζόμενους προγραμματιστές.

Πριν ξεκινήσουμε, ας ορίσουμε δύο όρους: ιδιωτική κατασκευή, η οποία χρησιμοποιείται για να δηλώσει μια κατασκευή που δημιουργείται στο μηχάνημα του ίδιου του προγραμματιστή. δημόσια κατασκευή, που σημαίνει μια κατασκευή που δημιουργείται σε μια μηχανή δημόσιας κατασκευής. Η ιδιωτική κατασκευή είναι σχετικά απλή, επειδή το PDB και το binay βρίσκονται στο ίδιο μέρος και συνήθως τα προβλήματα που έχουμε αφορούν τη δημόσια κατασκευή.  

Το πιο σημαντικό πράγμα που πρέπει να γνωρίζουν όλοι οι προγραμματιστές είναι ότι "τα αρχεία PDB είναι εξίσου σημαντικά με τον πηγαίο κώδικα", χωρίς τα οποία δεν μπορείτε καν να κάνετε εντοπισμό σφαλμάτων. Για δημόσια έκδοση, ο διακομιστής συμβόλων πρέπει να αποθηκεύσει όλα τα PDB και, στη συνέχεια, όταν ο χρήστης αναφέρει ένα σφάλμα, το πρόγραμμα εντοπισμού σφαλμάτων μπορεί να βρει αυτόματα το αντίστοιχο αρχείο PDB στο binay και τόσο το Visual Studio όσο και το Windbg γνωρίζουν πώς να έχουν πρόσβαση στον διακομιστή συμβόλων. Πριν αποθηκεύσετε το PDB και το binay στον διακομιστή συμβόλων, πρέπει επίσης να δημιουργήσετε ευρετήριο προέλευσης της εκτέλεσης PDB, το οποίο είναι να συσχετίσετε το PDB και την πηγή.  

Το επόμενο μέρος υποθέτει ότι ο διακομιστής συμβόλων και η ευρετηρίαση διακομιστή προέλευσης έχουν ήδη ρυθμιστεί. TFS2010 μπορεί να γίνει τόσο απλά όσο η ευρετηρίαση πηγής και η αντιγραφή διακομιστή συμβόλων για μια νέα έκδοση.

2. Το περιεχόμενο του αρχείου ΠΣΠ

Ξεκινώντας επίσημα το περιεχόμενο του PDB, το PDB δεν είναι μια δημόσια διαθέσιμη μορφή αρχείου, αλλά η Microsoft παρέχει ένα API για να βοηθήσει στη λήψη δεδομένων από το PDB.

Το εγγενές PDB της C++ περιέχει τις ακόλουθες πληροφορίες:
* δημόσιες, ιδιωτικές και στατικές διευθύνσεις λειτουργιών.
* Το όνομα και η διεύθυνση της καθολικής μεταβλητής.
* Ονόματα και μετατοπίσεις παραμέτρων και τοπικών μεταβλητών στη στοίβα.
* τύποιορισμοί κλάσης, δομής και δεδομένων.
* Δεδομένα παράλειψης δείκτη πλαισίου για τη διέλευση της εγγενούς στοίβας στο x86.
* Το όνομα και ο αριθμός των γραμμών στο αρχείο πηγαίου κώδικα.

Το .NET PDB περιέχει μόνο 2 μέρη πληροφοριών:
* Όνομα αρχείου πηγαίου κώδικα και αριθμός γραμμών.
* και το όνομα της τοπικής μεταβλητής.
* Όλα τα άλλα δεδομένα περιλαμβάνονται ήδη στο . NET Μεταδεδομένα;  





Προηγούμενος:Το Visual Studio προσθέτει τις ισχυρές δυνατότητες επεξεργασίας του Vim για να δυσκολέψει την πρόληψη!
Επόμενος:SQL Server Αποστολή αλληλογραφίας με χρήση βάσεων δεδομένων (sp_send_dbmail)
Δημοσιεύτηκε στις 16/1/2018 3:44:18 μ.μ. |
 Σπιτονοικοκύρης| Δημοσιεύτηκε στις 8/12/2022 9:44:33 μ.μ. |
Το VS 2022 ρυθμίζει το έργο για τη δημιουργία ενός αρχείου .pdb
https://www.itsvse.com/thread-10397-1-1.html
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com