这个问题在这里已有答案:
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 回答
两个可能的情况是
确保DebugView以管理员身份运行
检查"Capture"菜单中"Capture global Win32"的复选标记
它也应该显示服务的调试消息 .