Мы разрабатываем библиотеку Win64 DLL, используя набор инструментов G CC (MinGW-w64) в версии 4.8.3. В качестве IDE мы используем VisualStudio Code (версия 1.44.2) с плагином IntelliSense C / C ++, отладкой и просмотром кода от Microsoft (версия 0.27.0).
К сожалению, мы не можем устанавливать какие-либо точки останова внутри нашей DLL.
Ситуация такая же, если мы подключаем DLL в нашем TestApplication статически или динамически с помощью LoadLibrary.
Запуск GDB как консольный процесс позволяет нам устанавливать точку останова в DLL и останавливаться на этой строке, но мы упускаем удобство IDE. Я предполагаю, что есть проблема в конфигурации проекта VSCode или в плагине C / C ++.
Мы используем следующий запуск. json file:
"version": "0.2.0",
"configurations": [
{
"name": "gcc.exe build and debug active file",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/Win64/TestApplication.exe",
"args": [],
"stopAtEntry": true,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"miDebuggerPath": "${workspaceFolder}/minGW-w64/bin/gdb.exe",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": false
}
],
"preLaunchTask": "build-all",
"avoidWindowsConsoleRedirection": true,
"logging": {
"trace": false,
"traceResponse": false,
"engineLogging": true
}
}
]
}
Кто-нибудь может отладить Win64 DLL с помощью того же набора инструментов?