Ошибка при профилировании с помощью VS: невозможно открыть драйвер профилировщика
Я запускаю Windows 8 с полностью отключенным UAC, что можно сделать, изменив параметр реестра (установив его в "Никогда не уведомлять" no дольше полностью отключает его в Windows 8).
Когда я пытаюсь профилировать код С# через Visual Studio, я получаю следующую ошибку (нажатие да не разрешает проблему):
Не удалось открыть драйвер профайлера, хотите ли вы обновить учетные данные [имя_пользователя]?
Запуск vsperfcmd /Admin:Driver,START
из командной строки говорит:
Ошибка VSP1449: невозможно запустить VSPerfDrv100. Этот драйвер был заблокирован от загрузки. Попробуйте использовать переключатель /Admin VSPerfCmd из повышенная окружающая среда.
Я, очевидно, использую повышенную среду, поскольку с полностью отключенным UAC у меня больше нет двух токенов безопасности, а только токена безопасности администратора.
Как я могу решить эту проблему?
Ответы
Ответ 1
Сообщение в блоге здесь Профайлер Visual Studio в Windows 8" указывает на следующее:
Windows 8 добавила логику для предотвращения всех несовместимых версий (2010, 2008 и 2005 гг.).
Это означает, что когда вы пытаетесь начать профилирование с помощью несовместимого вы получите сообщение "Ошибка VSP1398: монитор был не удалось запустить драйвер производительности VS. В доступе отказано. Рассматривать используя параметры /Admin: Driver, Start и /Admin: параметры безопасности VSPerfCmd из повышенной среды".
Это приведет к следующему поведению при запуске Visual Studio 2010 (или ранее) в Windows 8.
-
Выборка процессора, распределение памяти в .NET и Concurrency профилирование не будет запускаться в Windows 8. Единственным обходным решением для Windows 8 - использовать Visual Studio 2012 Professional или выше или профиль на Windows 7.
-
Профилирование инструментария может быть запущено, но время приложения и прошедшее время будет точно таким же.
Ответ 2
Попробуйте добавить разрешения "Полный контроль" в каталог, в котором находится драйвер "VSPerfDrv100.sys".
Вы можете найти это, используя "sc qc VSPerfDrv100"
.
Для x64 ПК это должно быть "C:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Performance Tools\x64"