c# - Windows Phone 原生 std::cout

标签 c# c++ logging windows-phone-8 native

我有一个 Windows Phone 应用程序,它使用我自己的 Windows Phone 运行时组件,其中包含 native C++ 代码。这工作正常。我现在的问题是,为了更容易地查找和调试错误,我想查看来自 C++ 的日志。

我的 C++ 代码中有:

void MyNativeCPPClass::outputTest()
    std::cout << "Testing \n";
    std::cout << std::flush;
}

现在我没有看到这个输出。我的猜测是,它被发送到控制台,但我没有在 Windows Phone 应用程序中看到控制台。那里只有我的输出窗口。我读过一个ConsoleTraceListener , 但我不知道如何为 windows phone 配置它。如果可能的话。

所以我想知道我是否可以以某种方式将我的 C++ std::cout 附加到我的 Windows Phone 应用程序中的输出窗口?或者如果那是不可能的。我怎样才能直接从 C++ 登录,以便我能以某种方式在 Visual Studio 中看到它?

最佳答案

如果出于调试目的需要这样做,我建议使用 OutputDebugString .当它附加到您的 Windows Phone 应用程序时,您使用此输出的任何内容都会出现在 Visual Studio 的“调试输出”对话框中。

确保附上 native debugger为了这个工作。

关于c# - Windows Phone 原生 std::cout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22716191/

相关文章:

c# - 使用 xsd.exe (VS2010) 从 xsd 生成 C# 代码时出现 StackOverFlowException

c++ - SetWindowsHookEx、KeyboardProc 和非静态成员

java - 记录器在类(class)中的位置应该是什么?

c# - 在 LINQ 中更新对象

c# - Python 到 C# 移植后的错误计算

c# - 是否存在与 ILMerge.exe 等效的 ILSplit.exe,或者如何实现?

java - 如何缩短 logback 日志中的线程名称?

c++ - 互斥量没有正确使用?继续过去的问题

c++ - 为什么 std::hex 和 std::oct 标志不起作用?

java - Apache Logging - 将日志输出直接发送到队列