Question

Je Visual Studio 2005 configuré pour utiliser les serveurs de symboles de Microsoft. J'ai aussi UltraMon installé, qui injecte une DLL de crochet dans tous les processus. Chaque fois que je commence mon débogage MFC l'application, dit Visual Studio:

"Loading symbols for C:\Program Files\UltraMon\RTSUltraMonHookX32.dll..."

pour quelque chose de clin d'œil à plusieurs dizaines de secondes. Il ne va jamais trouver ces symboles ... Puis-je dire que ce ne pas la peine de chercher?

(j'essayé de créer un fichier vide RTSUltraMonHookX32.pdb, mais Visual Studio voit que ce n'est pas bon et porte sur la recherche.)

Était-ce utile?

La solution

Vous ne pouvez pas le faire de façon à grain très fin, mais vous pouvez désactiver le chargement automatique des symboles puis choisissez manuellement les symboles pour charger via la fenêtre Modules (Debug -> Windows -> Modules).

Pour désactiver Symbole chargement automatique

  • Outils -> Options -> -> Symboles Debugging
  • Cochez la case « Rechercher les endroits ci-dessus que lorsque les symboles sont chargés manuellement »

Autres conseils

Vérifiez également que vous n'avez pas variable d'environnement « _NT_SYMBOL_PATH ». Si vous avez ce symbole var se charge indépendamment des paramètres VS.

A partir de Visual Studio à partir de 2010, vous pouvez aller à:

Tools -> Options -> Debugging -> Symbols -> Specify excluded modules

et entrer dans la liste des dll qui prennent trop de temps à charger. J'utilise le chemin complet, donné par la fenêtre de sortie; il accepte peut-être des jokers ou des noms de fichiers simples.

Dans mon cas, c'était parce que j'avais mis "Activer .Net Source Stepping" true

Tools > Options > Debugging > General. 

Au lieu de le mettre à faux, je mets « Activer juste mon code » true qui définit automatiquement « Activer .Net Source Stepping » false. Il m'a donné un avertissement avant de le faire:

Enabling Just my code automatically disabled .Net framework source stepping

Ce qui suggère et Just My Code sont .Net source stepping mutuellement exclusives .

J'espère que cela aide quelqu'un.

Vous pouvez également définir des exclusions de serveur de symboles qui ne sera pas tenté de télécharger dans HKEY_CURRENT_USER \ Software \ Microsoft \ Symbol Server \ Exclusions ou peut-être aussi HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Symbol Server \ Exclusions ou via un fichier .ini à% windir% \ system32 \ inetsrv \ Symsrv.ini (utilisez l'en-tête [exclusions] et de mettre chaque exclusion sur sa propre ligne). Les exclusions sont modèle simple correspond, donc à utiliser MSXML5. * Par exemple.

Non seulement le peut provoquer ce _NT_SYMBOL_PATH comportement, mais pour moi, ce fut la variable d'environnement qui _NT_ALT_SYMBOL_PATH a été à l'origine des retards.

(Je crois que j'ajouté cette variable lors de l'expérimentation avec WinDbg)

Dans Visual Studio 2013 Pro, si le serveur de symboles Microsoft est cochée, VS tentera de charger tous les symboles sur leur serveur, ce qui provoque beaucoup de temps supplémentaire.

  • Chargez tous les paquets de symboles de site MS manuellement, les mettre sur un disque SSD pour la vitesse: -)
  • Si vous avez un "_NT_SYMBOL_PATH" variable d'environnement, enlever la partie « http: // msdl .microsoft.com / téléchargement / symboles "de" SRV e: \ symboles * http://msdl.microsoft.com/download/symbols », donc vous avez seulement le chemin de symbole où vos symboles vivent précieusement téléchargés.
  • Maintenant, vous avez le soutien des symboles, mais ils ne seront pas téléchargés à partir de MS, mais chargé du lecteur
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top