【问题标题】:Visual Studio view StandardOuptut stream from DLLVisual Studio 查看来自 DLL 的 StandardOutput 流
【发布时间】:2010-11-15 19:14:16
【问题描述】:

我有一个使用自定义 DLL(用 C 编写,用 CL 构建)的 c# 应用程序。

DLL 有许多 printf,我希望能够在运行我的 c# 应用程序时查看它们。到目前为止,我还没有弄清楚如何在 Visual Studio(2010 或 2005)中查看 DLL 的输出。

我有一个 C 语言测试应用程序,它从命令行运行 dll,我可以在那里看到输出。

是否可以在 Visual Studio 中看到该输出?我是否需要以不同的方式构建 DLL 才能以某种方式启用它?

【问题讨论】:

    标签: c# c visual-studio dll


    【解决方案1】:

    您可以考虑 Sysinternals 的免费实用程序,称为 DebugView:

    http://technet.microsoft.com/en-us/sysinternals/bb896647.aspx

    我不确定这是否能完全解决您的问题,但如果电话是通过正确的地方进行的,您也许可以接听电话。试一试也无妨。

    【讨论】:

    • 在 Windows 2000、XP、Server 2003 和 Vista 下,DebugView 将捕获: Win32 OutputDebugString 内核模式 DbgPrint 在 Windows XP 和 Server 2003 中实现的 DbgPrint 的所有内核模式变体 DebugView 还提取内核模式调试输出如果 DebugView 在崩溃时正在捕获,则在崩溃之前从 Window 的 2000/XP 崩溃转储文件生成。
    【解决方案2】:

    您没有问这个问题,但我将在此处添加一条注释,说明在调试托管代码(在我的情况下为 C#)时在调试器中查看 OutputDebugString 输出。我必须在 Project->Properties->Debug 选项卡上设置“启用非托管代码调试”选项才能查看 OutputDebugString 的输出。请注意,这可能与 printf 无关,但如果您的 C dll 使用的是 OutputDebugString,它可能会很有用。

    所以,如果您使用的是 OutputDebugString,请注意这一点。

    这是link to my original question,我在其中询问了 OutputDebugString 和 VS 输出窗口。

    【讨论】:

      猜你喜欢
      • 2014-04-08
      • 2018-03-21
      • 2012-12-23
      • 1970-01-01
      • 1970-01-01
      • 2013-05-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多