Отладка С++ dll в С#
У меня есть .dll из С++, и я хочу отлаживать его на С#, но я не знаю, как это сделать.
Когда я скомпилировал проект С++, Visual studio попросил меня выполнить ".exe".
Я предположил, что мне пришлось создать проект для выполнения dll.
Но я потерялся, как я мог его отладить?
Ответы
Ответ 1
Если я правильно вас понимаю, вы хотите отлаживать созданную С++ DLL-библиотеку в проекте С#, который вызывает DLL, которую вы также создали?
Я сделал это раньше, перейдя в ваши свойства проекта С# и в разделе "Отладка", установив флажок "Включить неуправляемый отладку кода". Это должно позволить вам войти в вашу С++ DLL.
Ответ 2
Чтобы отлаживать С++ из С#, вам нужно сделать пару вещей.
- Добавьте проект С# в ваше решение для вашего приложения для отладки.
- Отредактируйте свойства проекта С# на "Разрешить неуправляемую отладку кода" на вкладке "Отладка" свойств проекта.
- Задайте проект С++ как зависимость проекта С#.
- Введите код в проекте С#, чтобы использовать DLL, используя P/Invoke или COM.
- Задайте некоторые контрольные точки в коде С++ и запустите проект С#.
Ответ 3
Visual Studio не может выполнить dll самостоятельно.
Вам нужно установить startup.exe, который будет использовать вашу С++ dll в свойствах вашего проекта dll. Вы можете сделать это из свойств → отладки → команды, указав путь к исполняемому файлу, который вызовет вашу dll и любой аргумент командной строки.
Ответ 4
SOS (Son of Strike) Отладочное расширение (SOS.dll) помогает отлаживать управляемый код в Visual Studio, предоставив информацию о внутренняя среда CLR
обратитесь к следующей статье: -
СТАТЬЯ MSDN