J'ai beaucoup de fichiers au format .pdb, certains téléchargés, mais jusqu'à présent, je ne peux pas utiliser ou lire ce qui se trouve à l'intérieur, donc je cherche comment lire et afficher le format de fichier .pdb à partir de MS Windows XP.
L'un de vous qui sait l'ouvrir?
Si vous voulez dire PDB comme dans une "base de données de programme" que le débogueur utilise:
Les fichiers PDB contiennent des données sur un fichier tel qu'un EXE ou DLL qui est utilisé pour faciliter le débogage. Il existe des interfaces publiques qui vous permettent d'extraire des données du fichier. Voir des exemples ici:
Si vous voulez dire PDB comme dans une base de données Palm Pilot, je n'en sais rien, mais le format de fichier est disponible ici:
Microsoft a publié le code source de leurs formats PDB, afin que d'autres développeurs de compilateurs comme l'équipe LLVM puissent implémenter le format PDB plus facilement.
https://github.com/Microsoft/microsoft-pdb/
Pour vider réellement la sortie d'un fichier, utilisez simplement ceci:
https://github.com/Microsoft/microsoft-pdb/blob/master/cvdump/cvdump.exe
cvdump Whatever.pdb
De nos jours, je recommande fortement l'analyseur PDB de LLVM, llvm-pdbutil.
C'est un excellent dumper PDB riche en fonctionnalités et idéal pour compléter le cvdump de Microsoft.
Pour plus de détails et de documentation, voir:
Quelques commandes utiles pour commencer:
llvm-pdbutil dump -all your.pdb
llvm-pdbutil bytes -syms your.pdb
llvm-pdbutil -help
Obtenir llvm-pdbutil:
Selon LLVM 7.0.0, la dernière version officielle, llvm-pdbutil.exe
N'est pas distribué avec les binaires LLVM, il doit donc être construit à partir des sources.
Cependant, si vous êtes d'accord avec un binaire Windows 64 bits non officiel, mes versions llvm-pdbutil maison sont disponibles ici (notez que Visual C++ 2015 Redistributable est requis):
https://github.com/shaharv/llvm-pdbutil-builds/releases
Construction de llvm-pdbutil:
Pour construire llvm-pdbutil à partir de la source sur Windows, vous devrez obtenir et configurer la construction LLVM. Suivez les instructions sur https://llvm.org/docs/GettingStarted.html .
Il y a cependant quelques ajouts nécessaires pour le support PDB. Pour résumer (pour VS 2017):
git clone https://github.com/llvm/llvm-project.git
cd llvm-project
mkdir build && cd build
set VSINSTALLDIR=c:\Program Files (x86)\Microsoft Visual Studio\2017\Community\
.cmake -G "Visual Studio 15 2017" -A x64 -Thost=x64 -DLLVM_ENABLE_DIA_SDK=ON ../llvm
Tools/llvm-pdbutil
.Vous pouvez utiliser outil DBH à partir du SDK Windows.
&'C:\Program Files\Debugging Tools for Windows (x64)\dbh.exe' -v MySymbol.pdb dump