首页 文章

Windows服务中的Debug.WriteLine到OutputDebugString [重复]

提问于
浏览
1

这个问题在这里已有答案:

Context

注意:log4net从问题中分离出来,只是编写上下文以获取更多诊断事实

我正在使用log4net RollingFileAppender和DebugAppener . 该应用程序可以在控制台模式下启动,但也可以作为服务安装 . 当启动stanalone时,所有DebugAppener都会通过Mark Russinovich的DebugView确认OutputDebugString . 作为服务运行时,只写入文件日志而不输出OutputDebugString .

Diagnostics

  • 与log4net或DebugAppender相关的问题是 not . 纯Debug.WriteLine("Hello world")调用会出现同样的问题

  • 该服务作为LocalSystem运行(因此可能不是权限问题)

  • 文件正确写入两种情况

Question

我错过了什么?在作为服务运行时,如何写入OutputDebugString(使用log4net DebugAppender)?

1 回答

  • 1

    两个可能的情况是

    • 确保DebugView以管理员身份运行

    • 检查"Capture"菜单中"Capture global Win32"的复选标记

    它也应该显示服务的调试消息 .

相关问题