Pourquoi utiliser WinDbg vs Visual Studio (VS) débogueur?
Quelles sont les raisons principales pour l'utilisation WinDbg vs le débogueur de Visual Studio?
Et il est couramment utilisé comme un remplacement complet pour le débogueur de Visual Studio, ou plus lorsque le besoin s'en fait sentir.
Vous devez vous connecter pour publier un commentaire.
Si vous vous demandez pourquoi vous devriez utiliser windbg sur Visual Studio, puis vous avez besoin de lire Avancées De Débogage De Windows. Tout moment vous avez besoin de déboguer un vraiment laid problème windbg a la meilleure technologie pour le faire avec de Visual Studio. Windbg, a un langage de script puissant et permet d'écrire des Dll pour automatiser des problèmes difficiles. Il va installer gflags.exe qui vous donne un meilleur contrôle sur le tas pour le débogage mémoire remplace.
Vous n'avez pas réellement besoin de lancer l'installation, vous pouvez simplement copier les fichiers et être prêt à aller. Aussi, il installe adsplus.vb, de sorte que vous pouvez prendre des mini-décharges de processus en cours d'exécution. Il est également très facile d'installation pour effectuer le débogage distant. Il n'y a rien de mieux que de pouvoir déboguer un problème à partir de votre propre bureau à la place de la lutte contre le moniteur de 15 pouces qui scintille sur un PC de test.
Pour le quotidien d'écriture de code j'utilise Visual Studio, mais une fois que vous avez besoin pour démarrer le débogage des problèmes à partir d'autres ordinateurs ou de vous trouver dans une très laid situation, windbg est la seule façon d'aller. Passer quelques temps à l'apprentissage de windbg est un excellent investissement. Aussi, si vous regardez les vidages sur incident il y a deux grandes ressources, http://www.dumpanalysis.org/blog et http://blogs.msdn.com/ntdebugging/default.aspx qui font tout leur débogage à l'aide de windbg.
Voici quelques liens pour aider à l'aide de WinDbg, la plupart le sont .NET spécifiques.
Vous ne précisez pas si vous êtes le débogage de code natif ou géré. Il n'a pas d'incidence sur la réponse, WinDbg est extrêmement utile à la fois, mais beaucoup de gens croient que WinDbg est en quelque sorte moins pertinentes lors du débogage .NET applications. De ne pas faire. Comme un bonus, vous pouvez en apprendre beaucoup sur la façon dont l' .NET plate-forme fonctionne par le débogage .NET application dans WinDbg avec l'extension SOS. Exécuter (ou joindre pour) votre .NET application dans WinDbg et le type...
...pour être sûr que vous chargez l'extension de droite pour la version du CLR en cours d'utilisation. Tapez ensuite...
... pour voir ce que les commandes sont disponibles dans l'extension SOS.
Que j'ai entendu il plaisanté en disant que Microsoft n'a qu'un seul outil de développement, et c'est WinDbg. Tout ce que vous pourriez peut-être voulez pour le débogage est là, ou dans une extension. Bien sûr, un sous-ensemble de ces choses sont également disponibles en VS avec une INTERFACE utilisateur plus conviviale... 🙂
Je l'ai utilisé quand j'ai été envoyé .les fichiers dmp à partir d'un NT4.0 serveur MSVC ne se charge pas ces vieux fichiers au format.
Mélange noyau de débogage, plus à distance de l'utilisateur en mode de débogage.
Autant que je sache, visual studio encore ne peut pas faire le débogage à distance dans le mode que je décris comme "solution". C'est une sacrément bonne raison pour utiliser windbg.
Problème:
Solution:
Aussi, je le trouve plus facile à utiliser le même débogueur pour les deux en mode noyau et le mode utilisateur, windbg est très puissant, même en mode utilisateur, et je peux tirer mon propre windbg extensions
dans les deux mode noyau et le mode utilisateur instances.
Léger, qui peut être exécuté sans l'installer sur la machine d'un client, rapide, peut debug mode noyau.
Est la dernière visual studio manque encore un équivalent de windbg s "-o" qui rend le débogueur de joindre automatiquement à l'enfant des processus? Très utile pour les applications qui doivent être exécutés à partir d'un compliqué .le fichier bat, ou des applications que de la fourche et de sortie du processus parent.
J'ai toujours aimé l'horlogerie et de la fonctionnalité de traçage: 'wt'
-> Il imprime à la fenêtre de sortie de tous les appels de fonction comme ils se produisent. C'était assez sympa!