Windows 2008 r2 debugview(OutputDebugString)问题

Windows 2008 r2 debugview(OutputDebugString)问题

你好,我们正在 Windows 2008 R2 上安装 x86 应用程序作为服务,它使用输出调试字符串用于调试消息。

问题是调试视图仅当应用程序以提升模式从控制台运行而不是作为服务运行时,实用程序才会捕获来自应用程序的调试输出。

我还没有找到任何 KB 直接谈论 Windows 2008 R2 中 OutputDebugString 的这个限制。

有人遇到过这样的问题吗?真的存在这样的限制吗?

UPD:如果这很重要,我们正在使用终端服务连接到服务器

答案1

更新: 这似乎是这个问题的一个解决办法它是一个可以正确创建互斥锁的特殊内核模式驱动程序。

Windows 调试器和输出调试字符串使用互斥锁、共享内存缓冲区和两个事件来传递消息。似乎有时权限错误尝试读取消息时可能会发生这种情况。也许在编写消息时会发生这种情况。

我认为使用以下方式分析应用程序依赖行走者是找到 CreateMutex 调用的最佳方式,而不是逐步进行反汇编调试

相关内容