Я пытаюсь использовать новые визуализаторы отладки в моем проекте, но что-то случилось с Visual Studio, и он больше не принимает мои файлы natvis. Я пытался скопировать их в %USERPROFILE%\My Documents\Visual Studio 2012\Visualizers
а также для \Program Files (x86)\Microsoft Visual Studio 11.0\Common7\Packages\Debugger\Visualizers
но все равно не получается.
Это сработало неделю назад, но с тех пор что-то сломалось.
Я пытался восстановить Visual Studio, но это не помогло.
Я пытался включить EnableNatvisDiagnostics
в реестре, но я не получил никаких диагностических сообщений в Output window
,
Хотя предустановленные файлы natvis работали нормально. Поэтому я попытался удалить один из предустановленных файлов natvis: stl.natvis
от Program Files (x86)\Microsoft Visual Studio 11.0\Common7\Packages\Debugger\Visualizers
но Visual Studio все еще показывал vector
как будто он имел доступ к stl.natvis
файл. Кто-нибудь знает, как это исправить? Есть ли другое место, откуда Visual Studio загружает файлы natvis? Может быть, есть ключ реестра для этого?
PS. Я пытался с помощью ProcessMonitor
чтобы узнать местоположение, из которого Visual Studio загружает файлы natvis, но я не смог найти никаких ссылок в ProcessMonitor
логи.
Я наконец понял это. Визуализаторы Natvis не работают, когда Редактировать и продолжить включен.
У меня такая же проблема.
Проверьте Инструменты-> Параметры-> Отладка-> Общие->Показать необработанную структуру объектов в окнах переменных.
Это должно быть отключено.
Я только что понял, что пользовательские файлы NatVis (те, в %USERPROFILE%\Documents\Visual Studio 201x\Visualizers
) не используются, если вы используете ReSharper Test Runner для отладки теста. Однако встроенные, например, за std::vector
работают.
Если вы регулярно проводите тестирование (т.е. отлаживать -> Начать отладку, скорее всего F5) ваши пользовательские файлы NatVis загружаются и используются.