Win32应用程序控制台输出?

时间:2010-06-30 13:16:09

标签: debugging visual-studio-2005 winapi console tracing

在Visual Studio 2005中开发Win32应用程序(非控制台应用程序)时,有没有办法像从控制台那样获得相同类型的输出?

例如,假设我想查看日志语句(例如我在控制台应用程序中使用cout)来跟踪我的程序在代码中所采用的路径。

我的第一个想法是,可以通过“输出”选项卡从“显示输出:”下拉列表中选择一些内容,在调试时但我不知道我需要做什么API ......

alt text

例如说我在我的Windows应用程序中有以下内容,并想知道以下函数何时进入和退出将结果写入上面的Visual Studio窗口。

void someFunction(void)
{
   Win32APIConsoleLog("BEGIN: someFunction()");
   // ...
   Win32APIConsoleLog("END: someFunction()");
}

这可能吗?如果是这样,我需要包含什么库以及我需要做什么函数调用来写出控制台窗口?

1 个答案:

答案 0 :(得分:4)

OutputDebugString

我假设您要写入调试控制台,因为这是您的屏幕截图显示的内容。没有连接调试器时OutputDebugString是一个nop,但它允许您将任何想要的内容记录到调试器的输出中。

OutputDebugStringW(L"This will go to the output.\n");

// or

OutputDebugString("This will go to the output.\n");