【发布时间】:2014-02-05 14:39:44
【问题描述】:
我一直在管理和更新一个特定的应用程序。它很旧,我不是最初的开发者。多年来,它在其他小补丁中经历了几次调试会话。
过去几个月它一直运行稳定,但后来发生了一个让我觉得奇怪的异常。因为这只发生在发布模式的服务器上(它是一个服务器应用程序。)。
该应用程序是用 C# 编写的,在 Visual Studio 2012 Professional 中进行管理,并且发布为明确的 32 位 .NET 3.5,因为不幸的是服务器运行的是 Windows 2003。(我试图说服他们进行更新,以便我可以将应用程序更新到 .NET 4.5。但是,唉。)
所以我收到一条 C++ 调试消息。请参阅下面的屏幕截图。它出现在一个名为 vsprintf.c 的文件中,我猜在第 91 行。给我任何提示的唯一消息是格式!= NULL。
然而,这让我感到困惑。什么可能导致这种情况?在这种情况下,我最好采取哪些步骤进行调试?什么是“vsprintf.c”?
编辑:我设法在事件查看器中找到了一些东西。同时我会继续研究这个。
此致,
我。
【问题讨论】:
-
vsprintf是一个标准函数。您需要检查调用堆栈。 -
感谢您的快速回复,但我无法在开发机器上重现此内容。在我自己查看之前,服务器管理员也重新启动了应用程序。
-
@Simple 他怎么能用断言来做到这一点?另一方面,与此同时,DavideNgueyen 似乎在重现该问题方面取得了一些进展......