Отладчик Dotnet не достигает точек останова даже для простых консольных приложений.C#

Место общения программистов C#
Ответить
Anonymous
 Отладчик Dotnet не достигает точек останова даже для простых консольных приложений.

Сообщение Anonymous »

Моя компания предоставляет нам новые виртуальные машины для разработки .NET, и я пытаюсь их настроить. Проблема в том, что отладчик dotnet не работает, и я не могу понять, почему.
Некоторые характеристики:
ОС: Windows 10 22H2
VS: Visual Установлены Studio Professional 2022 17.8.3, разработка настольных компьютеров на C# и C++ с учетом рабочей нагрузки, а также MAUI
dotnet sdks: 8.0.100 и 8.0.403
Когда я создаю любой проект C# , например простое консольное приложение Hello World!, проект компилируется правильно, запускается, однако точки останова не достигаются. После запуска точки останова будут деактивированы и отобразится сообщение об ошибке: «Точка останова в настоящее время не будет достигнута. Для этого документа не загружены символы»
Я пробовал собирать и отлаживать из кода Visual Studio, используя CLI dotnet. Точки останова отображают одно и то же сообщение об ошибке.
Сообщение об ошибке обычно означает, что файл .pdb не найден, однако при проверке файловой системы файл .pdb находится там, рядом с .exe-файл. Еще более странно, если я проверю окно «Отладка->Windows->Модули» во время работы приложения, никаких модулей там не появится. Окно модулей просто пустое.
Я несколько раз проверял, что нахожусь в режиме отладки. Я также пробовал собирать с AnyCpu, X64 и X86, ничего не изменилось.
Я проверил, что оптимизация кода отключена (даже для выпуска).
Я включил «Подавить оптимизацию jit при загрузке модуля», но это не помогло.
Я пробовал «Включить только мой код», ни выключено, ни включено.
Я попробовал Очистить- > Восстановить, попробовал удалить папки obj и bin, попробовал удалить папку .vs. Я попытался перезапустить Visual Studio и перезагрузить виртуальную машину. Ничто из этого не помогло.
Я пробовал создавать проекты как на дисках C, так и на дисках D. Никакой разницы.
Я пробовал изменить символы отладки в разделе «Свойства проекта» -> «Сборка» -> «Общие». Никакой разницы.

Код: Выделить всё

Debugger.IsAttached
возвращает ложь. Debugger.Launch() и Debugger.Break() завершают работу приложения с кодом ошибки, в котором говорится, что отладчик не найден ((процесс 8476) завершен с кодом -2147483645.).
Я Следует отметить, что Visual Studio выглядит так, как будто отладчик запущен, появляются инструменты диагностики, и я могу «отсоединить» отладчик и т. д.
Я попробовал включить отладку в смешанном режиме через Свойства отладки-> Включите отладку собственного кода. Если для этого параметра установлено значение true, если я проверю окно модулей, там будут собственные модули, загруженные правильно. Поскольку я включил загрузку с серверов символов, их символы загружаются с сообщением: «Символы загружены без исходной информации».
Однако с управляемыми символами возникают некоторые проблемы. Прежде всего, они отображают сообщение об ошибке: «Модуль не загружен по адресу загрузки по умолчанию». Что касается символов, там написано: «Встроенный отладчик пропустил загрузку символов для управляемого модуля». Кнопка «Загрузить символы» отсутствует. Я не знаю, что происходит, но мне кажется, что собственный отладчик запустился правильно, а управляемый - нет.
Если я изменю код, он скомпилируется и Я вижу изменения в работающем приложении.

Подробнее здесь: https://stackoverflow.com/questions/791 ... plications
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»