2

У меня есть 3 проекта (A, B и C). A находится в C#, B и C на C++. Ссылки B как dll и B ссылки C как dll. A - основной проект. Я могу отлаживать процесс B в меню Debug, но я не могу отлаживать C.Как отлаживать DLL из другой DLL в VS2010

Я снял флажок «Включить только мой код»: меню Инструменты -> Параметры -> Отладка -> Включить просто Мой код.

Но кажется, что чего-то не хватает. Я уверен, что код C выполняется, так как я закодировал некоторые записи.

Я не могу изменить архитектуру проектов, например, переместить код C в B или что-то в этом роде.

+0

Это что-то, что не тестируется при модульном тестировании? –

+0

Вы уверены, что самая новая сборка DLL C загружена из ожидаемого места? Используйте Process Monitor для проверки. Если, например, релизная сборка DLL C загружается из другого места, она не может найти символы. «Копировать местный» может помочь –

+0

Код для модульного тестирования не выполняется. @Thomas Я проверил, и все проекты Copy local = true. Думаю, у меня есть ключ. Кто-то сказал мне набрать F11 в месте, где соединяются проекты A и C, и посмотреть, что произойдет. Я делаю это завтра –

ответ

0

Я также изменил эти настройки: Отладка-> Опции-> Проверить загрузку DLL-экспорта и включить отладку RPC. При подключении процесса перед подключением процесс щелкнуть Выберите и включил только T-SQL, управляемый 4.0 и x86, и, наконец, он работал