Я пытаюсь отладить динамическую библиотеку, которую я написал, используемую приложением в Visual Studio 2010. Я могу перейти к функции моей библиотеки DLL, но я не могу шагнуть вглубь и увидеть исходный код. Если я открою разборка окно, то я могу войти в код ASM, но я не вижу исходный код или какой-либо символ.
У меня есть сборка .dll и импорт .lib. .Pdb (/Zi
) файл, связанный с DLL был построен (с /DEBUG
). Оптимизация отключена (/Od
).
Мое приложение связывает импорт lib с #pragma comment(lib, "myImport.lib")
потому что в приложении есть инструмент для сборки, я не могу настроить его сам.
Мое приложение запускается в режиме отладки, а в Модули из отладчика я вижу, что моя библиотека загружена, а также символы.
Я также проверил Параметры> Отладка> Общие Включить только мой код опция отключена.
Как заставить VS2010 войти в функции моей dll?
У нас немного другая настройка, когда мы запускаем другое приложение, у нас нет исходного кода, из которого, в свою очередь, загружается созданная нами dll. Для отладки в нем мы используем команду Visual Studio Debug / Attach to Process … Возможно, эта команда может привести к успешной отладке в исходных кодах вашей dll.
Как и следовало ожидать, это была несовместимость компиляции. DLL была скомпилирована для среды CLR (/clr
). Я думаю, потому что конфигурация по умолчанию VS2010. Поскольку я удалил эту опцию, все можно отлаживать как обычно.