Почему DebugView не показывает сообщения отладки, когда Visual Studio делает - PullRequest
6 голосов
/ 14 марта 2009

Я разрабатываю объект Browser Helper, работающий внутри Internet Explorer. Я пишу сообщения отладки с ATLTRACE("..."); Они выглядят нормально, когда Visual Studio присоединен к процессу iexplore.exe, но это медленное для быстрого теста. DebugView ничего не захватывает из моего BHO.

Почему DebugView не показывает сообщения отладки BHO? Это как-то связано с Internet Explorer, работающим с низким уровнем целостности?

Ответы [ 2 ]

11 голосов
/ 14 марта 2009

Предполагая, что вы используете IE в Vista или более поздней версии (что звучит так, поскольку вы говорите об уровнях целостности), вы можете установить уровень целостности DebugView на более низкий уровень целостности, чтобы любое приложение могло отправлять ему сообщения:

icacls dbgview.exe /setintegritylevel low

И если вам не нравится идея постоянной настройки dbgview на низкую целостность (это может сделать сохранение журналов и еще много проблем, так как они попадут только в хранилище с низкой целостностью), вы можете запустить конкретный экземпляр dbgview с низкой целостностью с использованием инструмента Sysinternals psexec:

psexec -l dbgview

Наконец, если все, что вас беспокоит, это количество времени, которое требуется для загрузки отладчика VS для подключения к процессу, вы можете использовать отладчик командной строки (например, ntsd.exe или cdb.exe). Ntsd.exe поставляется с Windows, но более новая версия поставляется с пакетом «Средства отладки для Windows» , который также включает в себя очень похожий cdb.exe.

1 голос
/ 14 марта 2009

Для ваших быстрых тестов Visual Studio все еще работает? Если это так, это может вызвать эту проблему.

...