Я действительно бился головой об стену пословицы над этой.
У меня есть решение, которое содержит как C #, так и C ++ проекты кода.
Я часто называю C ++ DLL, которые скомпилированы в этом проекте из C # через P / Invoke. Без проблем. Все необходимые настройки отладчика через *.sln
Насколько мне известно, файл, а также файлы C ++ и C # были правильно установлены. Замечания: Я часто могу отлаживать аналогичным образом код P / Invoked C ++ без проблем!
Естественно, я подумал, что, возможно, символы не загружались — однако, открыв окно модулей, я обнаружил, что библиотеки DLL, в которую я пытаюсь перейти, даже нет в списке! Запуск функции в моей программе на C # действительно использует DLL (я получаю правильный вывод), но при просмотре окна модулей модуль DLL все равно не появляется.
У кого-нибудь есть представление о том, что происходит?
ТЛ; др
У меня достаточно опыта с отладкой P / Invoked C ++. Тем не менее, DLL, которую я хочу отладить, даже не появляется в списке модулей (поэтому я, очевидно, не могу войти в нее, если отладчик VS, похоже, не знает о ее существовании).
Я думаю, что у вас не включена отладка для неуправляемого кода. Перейдите на вкладку «Свойства» в меню «Запуск» проекта «Отладка». Установите флажок «Включить отладку неуправляемого кода».
Других решений пока нет …