Пользовательские файлы natvis в Visual Studio 2012

Я пытаюсь использовать новые визуализаторы отладки в своем проекте, но что-то случилось с Visual Studio, и он больше не забирает мои файлы natvis. Я попытался скопировать их в %USERPROFILE%My DocumentsVisual Studio 2012Visualizers а так же Program Files (x86)Microsoft Visual Studio 11.0Common7PackagesDebuggerVisualizers но он все равно терпит неудачу.

он работал неделю назад, но с тех пор что-то сломалось.

я попытался восстановить Visual Studio, но это не помогло.

я попытался включить EnableNatvisDiagnostics в реестре, но я не получил никаких диагностических сообщений в Output window.

предустановленные файлы natvis работали нормально. Поэтому я попытался удалить один из предустановленных файлов natvis:stl.natvis С Program Files (x86)Microsoft Visual Studio 11.0Common7PackagesDebuggerVisualizers но Visual Studio все еще показывала vector как будто у него был доступ к . Кто-нибудь знает как это исправить? Есть ли другое место, откуда Visual Studio загружает файлы natvis? Может быть, для этого есть раздел реестра?

PS. Я пробовал использовать ProcessMonitor, чтобы узнать местоположение, из которого Visual загружает файлы natvis, но я не смог найти ссылок в ProcessMonitors журналы.

3 ответов


Я, наконец, понял это. Визуализаторы Natvis не работают, когда "изменить и продолжить" это.


У меня была та же проблема.

Инструменты->Параметры->Отладка->Общие->показать сырую структуру объектов в переменных windows. Он должен быть отключен.


Я только что понял, что пользовательские файлы NatVis (те, что в %USERPROFILE%\Documents\Visual Studio 201x\Visualizers) не используются, если вы используете ReSharper Test Runner для отладки теста. Однако встроенные, например, для std::vector работают.

Если вы регулярно выполняете тест (т. е. Debug ->Начать Отладку, вероятно, F5) ваши пользовательские файлы NatVis загружаются и используются.