1 votes

Crash silencieux dans une application c++ de Visual Studio 2008

Nous avons une application serveur TCP C++ non gérée fonctionnant comme un service Windows qui se bloque silencieusement après quelques jours d'exécution sur un serveur Win2003. Aucun fichier journal Dr. Watson n'est généré (ce n'est pas un problème avec le journal Dr. Watson car il détecte d'autres plantages dans la même application). En raison de l'absence de fichier journal Dr. Watson, nous ne sommes pas en mesure de progresser sur la façon de déboguer ce problème

L'application serveur TCP est une sorte de processeur HTTP. Elle se connecte à un large éventail de serveurs Web et traite les données.

Quelqu'un peut-il me guider sur ce qui peut être fait pour déboguer les crashs silencieux ? Il y a plus de 1000 utilisateurs connectés à ce serveur à tout moment et il n'est donc pas possible de l'exécuter en mode débogage. Le crash n'est pas reproductible et se produit une fois tous les 5-10 jours sur l'un des 6 serveurs

Tout outil qui peut aider à déboguer ces crashs silencieux. L'application est une pure application C++ sans aucun MFC ou STL

Merci d'avance.

Krishna

2voto

JSBձոգչ Points 25069

La dernière fois que j'ai eu un problème de crash silencieux comme celui-ci, c'était à cause de Validation des paramètres d'exécution en C. qui, par défaut, appelle simplement TerminateProcess sans aucun autre bienfait (selon la version de msvcrt*.dll dont vous faites le lien). Si c'est la cause de votre problème, vous pouvez l'éviter en téléphonant à _set_invalid_parameter_handler et en donnant un gestionnaire qui appelle soit DebugBreak (ce qui provoque un crash) ou ne fait rien, ce qui permet de renvoyer un code d'erreur à l'appelant. Détails dans le lien ci-dessus.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X