2010-11-22 31 views
0

J'ai créé une sauvegarde à l'aide de clrdump. Quand je vais voir à l'aide sos, sos je charge puis exécutez DSO, mais l'erreur que je reçois est:Débogage .net à l'aide de SOS

PDB symbol for mscorwks.dll not loaded 

Cependant, dans la fenêtre du module, il dit que le symbole est chargé. J'ai obtenu les symboles à jour du magasin MS?

Quelqu'un a des idées?

Merci,

Darren.

Répondre

2

Vous n'avez pas vraiment besoin de symboles pour mscorwks.dll pour !dso pour fonctionner correctement, mais voici quelques conseils sur la façon d'obtenir les symboles.

La première chose que vous devez faire est de vérifier que vous avez bien défini le chemin du symbole. Vous pouvez afficher le paramètre actuel du chemin de symbole à l'aide de la commande .sympath. Vous pouvez soit télécharger tous les symboles et pointer le chemin du symbole vers l'emplacement sur le disque, ou simplement utiliser le serveur de symboles en ligne. Dans les deux cas, le chemin du symbole doit pointer vers l'emplacement correct.

Vous pouvez utiliser la commande .symfix pour pointer vers le serveur de symboles publics de Microsoft, ce qui est probablement le moyen le plus simple d'obtenir des symboles (à condition que vous disposiez d'un accès en ligne).

Utilisez la commande lm pour afficher les modules et leurs symboles. S'il est dit pdb symbols à côté d'un module, tout va bien. Gardez à l'esprit que WinDbg ne chargera les symboles que si nécessaire, donc pour beaucoup de modules, vous verrez probablement deferred. Vous pouvez forcer le chargement des symboles pour tous les modules à l'aide de la commande .reload /f.

Pour résoudre les problèmes de chargement des symboles, utilisez la commande !sym noisy. Il vous dira où le débogueur essaie de localiser les fichiers PDB.

+0

Bonjour, la commande sym noisy ne fonctionne pas pour moi. Il dit erreur: opérande manquant? Des idées? –

+0

@Darren: Avez-vous inclus le '!'? La commande est '! Sym' et l'argument est' bruyant '. –

+0

Je l'ai fait. J'ai depuis essayé cela en utilisant Windbg plutôt que débogueur VS et ça marche bien. Merci. –

1
!sym noisy  
.symfix 
.reload -f