Описание
При этом у меня есть небольшая проблема с моим проектом - я не могу отлаживать dll (написанную на MASM), загруженную в программу, написанную на C #. Я оставляю точки останова в разных местах процедуры в dll, но ничего не происходит. Выполнение программы просто проходит через всю процедуру без остановки.
Я использую Visual Studio 2010 и имею следующую структуру решения:
Solution
|
+--+ the masm dll project
| |
| +- *.asm
| |
| +- *.def
|
+--+ C# dll library poject
|
+--+ my C# project
Поэтому у меня есть доступ к исходному коду библиотеки DLL, и ее проект находится в том же решении, что и вызов проекта.
Однако, когда я устанавливаю точку останова в проекте библиотеки C #, она работает.
И все же я не могу отладить этого педераста. Может ли кто-нибудь указать мне на решение проблемы?
Решение
Предоставлено Камфордом
Все, что вам нужно сделать, чтобы иметь возможность отлаживать неуправляемую dll (не только masm, nasm и т. Д.), - это включить отладку неискаженного кода, что выполняется (в VS2010) с помощью:
Включение отладки неуправляемого кода
- Выбрав проект в обозревателе решений, в меню Проект щелкните Свойства.
- Щелкните вкладку «Отладка».
- Установите флажок Включить отладку неуправляемого кода.
(из здесь)