Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Visual C++/MFC/WTL > Please specify the executable file for the debug |
Автор: bomberman 3.6.2008, 09:37 |
Приветствую! Наверное не обладаю могучим опытом Visual C++ (6.0) - гуру, посему и всплывает вопрос, отраженный в названии и в описании темы: дело в том, что при указании любого этого самого "the executable file", например предлагается IEXPLORER (при создании, например, DLL-исходника) вываливается сообщение о том, что для данного экзешника отсутствует отладочная информация, а если я все-таки нахожу экзешник для которого имеется так называемая отладочная информация, то при нажатии на F10 или F11 (отладка) происходит отладка совершенно другого исходника - а именно того, который принадлежит к экзешнику (который, видимо, и является частью "отладочной информации") Т.е. проблема заключается в том, как все-таки выполнить отладку (в моем случае DLL-исходника) Спасибо за ответ! |
Автор: ama_kid 3.6.2008, 09:48 |
эээ, ну так это... вообще-то нужно указывать тот exe-шник, который будет вызывать твою dll-ку... А что explorer знает о твоей библиотеке? |
Автор: bomberman 3.6.2008, 10:01 |
Согласен, коллега, но при указании этого экзешника, выполняется отладка исходника, из которого этот экзешник был создан: например, я создал исходник: // DLLMake.cpp : Defines the entry point for the DLL application. // #include "stdafx.h" BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved ) { return TRUE; } а до этого я создал экзешник из исходника // DLLUse.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <windows.h> int main(int argc, char* argv[]) { HINSTANCE hLib = ::LoadLibrary("DLLMake.dll"); return 0; } и данный экзешник подключил к исходнику DLLMake При попытке начать отладку исходника DLLMake.cpp начинает отлаживаться исходник DLLUse.cpp. |
Автор: jonie 3.6.2008, 10:46 |
ну и? рядом с этим exe лежит отладочная иформация (pdb файл). он с него и тянет исходники. ставьте брекпоинты внутри кода длл, там и остановитесь (конечно, если exe использует именно вашу dll (и именно ту которую вы собрали в данный момент)). |
Автор: bomberman 3.6.2008, 11:00 | ||
как правильно заметил jonie:
Пробовал ставить брекпоинты, как советовал jonie: прога просто выполняется, а на брейкпоинтах не останавливается |
Автор: dizzy1984 4.6.2008, 12:33 |
DLLUse.exe не видит DLLMake.dll? Попробуй положить ее в директорию с *.exe файлом. У тебя debug-версия *.dll? Брейкпоинты активные после запуска отладки *.dll? |