当前位置:  开发笔记 > 开发工具 > 正文

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

如何解决《为什么DebugView在VisualStudio执行时不显示调试消息》经验,为你挑选了1个好方法。

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

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



1> Michael Burr..:

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

icacls dbgview.exe /setintegritylevel low

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

psexec -l dbgview

最后,如果您担心的是加载VS调试器以附加到进程所需的时间,则可以使用命令行调试程序(如ntsd.exe或cdb.exe).Ntsd.exe附带Windows,但更新版本附带"Windows调试工具"软件包,其中还包含非常相似的cdb.exe.


我的回忆是OutputDebugString使用带有互斥和事件的共享内存部分来传递数据.我假设(可能不正确)阻止打开共享部分或从低完整性过程到更高完整性过程的信令事件.
推荐阅读
依然-狠幸福
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有