我正在使用 ASSERTE 宏来检查先决条件。根据其定义,它使用 ASSERT_BASE,后者又调用 _CrtDbgReportW 来打印消息。_CrtDbgReportW 输出到哪里?

我假设如果应用程序是从调试器启动的,它将进入调试器窗口。如果不在调试器下,消息会去哪里?

有帮助吗?

解决方案

输出为 _CrtDbgReportW 取决于你如何设置。默认情况下,它会将其发送到 输出调试字符串 API。

调试器捕获 OutputDebugString 输出,并通常按照您的建议将它们显示在调试器窗口中。

还有一些应用程序会捕获输出,例如 调试视图 您可以将其用于 PC 应用程序。

更新:我错过了 Windows Mobile 的部分。我仍然相信它输出到 OutputDebugString 但我不知道有任何第三方应用程序可以工作。我知道在 Windows Mobile 下捕获 OutputDebugString 输出的唯一方法是使用 调试功能 调试活动进程 / 等待调试事件 捕获 OUTPUT_DEBUG_STRING_EVENT 事件并将其写出某处。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top