代码之家  ›  专栏  ›  技术社区  ›  Chris Farmer Marcelo Cantos

如何获取对写入Visual Studio“输出”窗口的输出流的引用?

  •  5
  • Chris Farmer Marcelo Cantos  · 技术社区  · 14 年前

    我有一个第三方.NET库,它可以将一些关键诊断信息输出到 TextWriter 实例。我希望在调试模式下将此信息转储到Visual Studio 2008的输出窗口,如果不在调试模式下,则忽略此信息。是否有任何方法可以获取对使用此输出窗口的输出流的引用,以便创建 文本编辑器 是用它吗?

    要使用控制台进行输出,我可以…

    foo.LogTo(Console.Out);
    

    使用这个界面,我可以得到发送到输出窗口的日志信息吗?

    2 回复  |  直到 14 年前
        1
  •  1
  •   casperOne    14 年前

    Visual Studio已允许 writing of messages to the output window through the Debug class since .NET 1.1 .

    这么说,创建自己的textWriter实现就足够简单了,它只需将调用转发到调试类上的适当方法。当内容写入到文本编写器时,您将调用调试类方法,它将出现在输出窗口中。

    另外,因为您正在调用调试类,所以当您不处于调试模式时,输出将不会被输出(因为 Conditional 调试类方法的属性)。

        2
  •  1
  •   Henk Holterman    14 年前

    可以使用 OutputDebugString API 或者使用debug.writeline()转发数据。