Подтвердить что ты не робот

Visual Studio: отладка связанной DLL, у меня есть источник в другом SLN

Я пытаюсь отлаживать проект, который имеет ссылку на DLL, которую я добавил, DLL хранится во внешнем каталоге, и я просто добавил ссылку. Теперь, конечно, я могу отлаживать свой проект, но строка, которая вызывает метод на моей другой DLL, я не могу в нее вступить, то есть F12.

Один из способов сделать это - добавить мой проект (dll) в качестве существующего проекта в мое решение и заменить ссылочную DLL, чтобы использовать прикрепленный проект, а не файл на диске.

Но какой беспорядок, я уверен, что есть более чистый способ?

Кажется, я помню, копирую ли некоторые файлы PDB или что-то, но я не могу вспомнить. И мне нужно открыть 2 копии визуальной студии, 1 для моего основного проекта и 1 для моей ссылки DLL??

4b9b3361

Ответ 1

Восстановите второе решение в режиме отладки на вашей собственной машине (чтобы пути к файлам в этом PDB были специфичными для вашего компьютера).

Скопируйте и файлы .DLL и .PDB в папку справки. Visual Studio автоматически загрузит файл .PDB и использует пути к файлам для отображения источника.

Вы также можете использовать Symbol Server и Source Server для достижения этой цели, когда ссылочная сборка построена в другом месте: http://msdn.microsoft.com/en-us/library/vstudio/ms241613.aspx

Ответ 2

Я получил решение, выполнив ниже

Попробуйте отключить Just My Code (JMC).

Инструменты → Параметры → Отладчик Снимите флажок "Включить только мой код"

Ответ 3

У меня была та же проблема, которую я разрешил, очистив и восстановив решение. Он исправит ссылки в файлах .pdb, чтобы найти и ударить точку прерывания во втором проекте.

Ответ 4

Когда вы делаете сборку Debug, все файлы dll и pdb устанавливаются в хост-проекте. Поэтому не нужно копировать файлы вручную.

Щелкните правой кнопкой мыши по решению, выберите Добавить/Существующий проект... Перейдите в папку Class lib и выберите файл proj (например, myproj.csproj). Файлы не копируются, просто ссылаются и вы можете открыть источник для класса в среде IDE и установить контрольные точки обычным способом, и он просто работает.