Мое главное решение - использовать код из библиотеки классов утилиты, который я написал сам, но является частью другого решения. Как установить точку останова в указанном DLL файле?
Как установить точку останова в ссылочном коде в Visual Studio?
Ответ 1
Нажмите "Отладка", "Новая точка останова", "Разрыв в функции", затем введите полное имя функции.
Ответ 2
В Visual Studio откройте исходный файл указанной библиотеки DLL, который содержит нужный метод, вручную с помощью меню
Файл> Открыть> Файл...
Затем установите точку останова, нажав на левую границу в редакторе кода. Это позволяет вам разбивать любую строку кода, а не только вызовы функций. Visual Studio показывает точку останова в неактивном состоянии, потому что считает, что код недоступен. Просто игнорируй это; точка останова станет активной после запуска кода и загрузки DLL.
Примечание: вы должны ссылаться на отладочную версию вашей сборки, чтобы это работало.
Ответ 3
Вы можете выполнить одно из следующих действий:
- Добавьте проект DLL в решение, содержащее ваш исполняемый файл. Затем вы можете установить контрольные точки как обычно.
- Вместо этого вы можете просто открыть проект DLL и использовать Debug → Attach to Process для присоединения к вашему исполняемому EXE
Ответ 4
Убедитесь, что у вас есть файл .pdb в папке bin/debug, где находится dll-библиотека библиотеки ссылок. Когда вы отлаживаете свое текущее решение, вы можете войти в код из своей библиотеки классов. Когда вы войдете в библиотеку классов, вы сможете установить точки останова.
Ответ 5
Я знаю, что это старый вопрос, но может помочь многим.
Чтобы отладчик работал правильно, вам нужно загрузить базу данных символов отладки, файл .pdb с тем же именем, что и сборка, которую вы хотите отлаживать. Если это часть решения, которое вы создали, вы можете просто скопировать и вставить его из другой папки bin решения. Затем добавьте точку останова, указав полный путь к методу, который вы хотите отладить, плюс имя сборки, в которой он находится. Пример: "MyNamespace.MayClass.MyMethod, MyAssemblyName"
Если вы не владеете кодом, у вас есть 2 варианта, оба с использованием disasembler. Я использую dotPeek для этого, так как это действительно качается.
Вариант 1: вы открываете сборку с помощью dotPeek и создаете для нее один файл .pdb, затем копируете его в папку .bin и выполняете шаги, описанные выше. https://www.jetbrains.com/decompiler/help/Generating_PDB_Files.html
Вариант 2: использовать сервер символов dotPeek и генерацию PDB. https://www.jetbrains.com/decompiler/help/Symbol_Server_and_PDB_Generation.html После этого следуйте приведенным выше инструкциям, чтобы прикрепить экземпляр отладчика.
Надеюсь это поможет
Ответ 6
Это не мой собственный ответ, это предложение Frep D-Oronge в одном из комментариев выше. Это легко и работает без икоты:
"Я нахожусь легко - просто запустите два экземпляра Studio рядом друг с другом. Ctrl-F5 на" первичной ", чтобы запустить без отладчика, а затем присоединить к процессу экземпляр студии, который редактирует проект библиотеки"
Все кредиты принадлежат ему.