Как отладить проект с собственным кодом из проекта управляемого кода?C ++ / C # - PullRequest
5 голосов
/ 18 июля 2011

Как отладить проект с собственным кодом из проекта управляемого кода? Я использую C # для вызова кода C ++ и мне нужно отладить код C ++. В противном случае я должен выйти из проекта, открыть проект C ++, создать тестер и затем отладить код. Это ужасно.

Ответы [ 2 ]

9 голосов
/ 18 июля 2011

Добавьте ваш проект c ++ к решению, содержащему ваш код C #

На страницах свойств проекта C # на вкладке отладки

Установите флажок «Включить отладку неуправляемого кода»

Если это не сработает, вам также необходимо открыть диалоговое окно «Параметры» в меню «Отладка» или «Инструменты» (в VS2017) и перейти к «Отладка-> Общие». Отметьте опцию

"Подавить оптимизацию JIT при загрузке модуля (только для управляемого)."

После этого вы сможете отлаживать код C ++ / CLI и C ++. (Этот последний совет получен от Ким Того Андерсена .)

3 голосов
/ 18 июля 2011

В опциях отладки для Visual Studio вы должны указать правильный тип отладчика.

Откройте диалоговое окно свойств проекта и в разделе «Свойства конфигурации» выберите «Отладка». Для опции Тип отладчика выберите свойство, которое применяется:

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

В качестве примечания вы можете выбрать только нативный, но вы не сможете установить точку останова в управляемом коде. Я не уверен, если это проблема для вас или нет.

Если вы выберете только управляемый, вы, очевидно, не достигнете никаких точек останова в нативном коде.

...