为什么DebugView在Visual Studio执行时不显示调试消息

时间:2009-03-14 14:39:00

标签: debugging internet-explorer bho debugview

我正在开发在Internet Explorer中运行的浏览器帮助程序对象。我正在使用ATLTRACE("...");编写调试消息。当Visual Studio附加到iexplore.exe进程时,这些看起来很好,但这对于快速测试来说很慢。 DebugView从我的BHO中捕获任何内容。

为什么DebugView不显示BHO调试消息?是否与运行在低完整性级别的Internet Explorer有关?

2 个答案:

答案 0 :(得分:11)

假设您在Vista或更高版本上运行IE(听起来就像是在谈论完整性级别),您可以将DebugView的完整性级别设置为较低的完整性,以便任何应用程序都可以向其发送消息:

icacls dbgview.exe /setintegritylevel low

如果你不喜欢永久性地将dbgview设置为低完整性的想法(它可能会使保存日志并不会有什么痛苦,因为它们只会进入低完整性存储),你可以运行一个特定的使用Sysinternals'psexec工具完成低完整性的dbgview实例:

psexec -l dbgview

最后,如果你担心的是加载VS调试器以附加到进程所需的时间,可以使用命令行调试器(如ntsd.exe或cdb.exe)。 Ntsd.exe附带Windows,但"Debugging Tools for Windows" package附带了一个较新版本,其中还包含非常相似的cdb.exe。

答案 1 :(得分:1)

对于快速测试,Visual Studio仍在运行吗?如果是这样,那可能会导致此问题。