Есть ли профилировщик CLR, который работает с .NET 3.5 SP1 и WPF?

Во всех моих поисках я смог найти эту ссылку, которая предполагает, что старый CLR Profiler для .NET 2.0 должен работать с приложениями .NET 3.0 или 3.5.

Когда я пытаюсь профилировать мое приложение WPF.NET 3.5 SP1 с CLR Profiler для .NET 2.0, он запускает мое приложение просто отлично, но он вызывает диалог, в котором говорится: "Ожидание приложения для запуска общей среды выполнения языка".

Поскольку в моем приложении явно используется CLR, я могу только сделать вывод, что CLR Profiler для .NET 2.0 не работает с более новыми версиями фреймворка (может быть, это просто проблема с приложениями с 3.5 SP1).

Итак, кто-нибудь знает, есть ли версия профилировщика CLR, которая работает с 3.5 SP1? Если у вас нет версии профилировщика Microsoft, есть ли другой бесплатный профайлер, который я мог бы использовать с аналогичной функциональностью?

Ответ 1

Я просто попробовал запустить CLR Profiler с WPF-приложением, и он отлично работает. Для запуска приложения требуется некоторое время (дольше, чем с приложениями, отличными от WPF), но он работает.

Обновление:, чтобы обновить ответ; согласно приведенным ниже комментариям, решение заключалось в том, чтобы запустить CLR Profiler с правами администратора.

Ответ 3

CLR, используемая в рамках 2.0 и 3.5, отличается только пакетом обновления. CLR имеет версии 2.0 и 2.0SP1 для соответствующих версий. Профайлер CLR будет работать против версии 2.0SP1 CLR.

Малая коррекция: версия CLR версии 3.5 отсутствует. Самые последние версии: 2.0, 2.0SP1 и 2.0SP2 (связанные с .NET Framework SP1).

Ответ 4

Я только что использовал профилировщик CLR 2 с моим .NET WPF-приложением. Он может запускать приложение, но при нажатии "Show Heap Now" или любых предметов в меню "Вид" он отображает окна отчетов с пустыми цифрами. Так что, интересно, кто-нибудь уже пробовал это успешно? Или это просто не поддерживает приложения .NET WPF.

Ответ 5

Я допустил ошибку при запуске x86-версии CLR Profiler для .NET Framework 2 на моей 64-разрядной машине, которая постоянно отображала сообщение "Ожидание приложения для запуска общего языка". Если у вас 64-разрядная машина, вам, вероятно, придется запустить версию CLR Profiler, которая соответствует процессу, который вы хотите профилировать (то есть обычно в папке "x64" )

По какой-то причине WPF чрезвычайно медленный под профилировщиком.

Ответ 6

Не делайте глупую ошибку, которую я сделал, и пытаюсь использовать CLR profiler v1.1 - правильным является CLR Profiler для .NET Framework 2.0 (даже если вы используете .NET 3.5).