| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Visual C++/MFC/WTL > Debug- и Release-версии DLL в VC++ 2008 |
| Автор: erslgoeirjh 10.2.2015, 17:07 |
| Есть DLL с именем DLLIntegr.dll и есть клиентская программа CallDLLIntegr, которая использует эту DLL. (Причём в клиентской программе у меня предусмотрены варианты и явного, и неявного вызова этой DLL). При компиляции DLLIntegr.dll в режиме Debug и при компиляции клиентской программы CallDLLIntegr в режиме Debug всё нормально работает. При компиляции DLLIntegr.dll в режиме Release и при компиляции клиентской программы CallDLLIntegr в режиме Release также всё нормально работает. (И DLL, и клиентская программа у меня разработаны в VC++ 2008 как консольные приложения). Но я бы хотел правильно переименовать файлы DLLIntegr.dll и DLLIntegr.lib в Debug-версии соответственно как DLLIntegrdbg.dll и DLLIntegrdbg.lib, а файлы DLLIntegr.dll и DLLIntegr.lib в Release-версии -- соответственно как DLLIntegrrel.dll и DLLIntegrrel.lib , чтобы потом моя клиентская программа сама определяла, какое имя .dll-файла и .lib-файла ей следует использовать (чтобы компилятор или отладчик не ругался по поводу того, что нет файла DLLIntegr.dll или DLLIntegr.lib). Что мне для этого надо сделать при компиляции моей DLL в Debug-версии и Release-версии и что мне нужно сделать при компиляции моей клиентской программы CallDLLIntegr в Debug-версии и Release-версии? |
| Автор: borisbn 11.2.2015, 15:37 | ||
В свойствах проекта DLL для конфигурации Debug делаешь так![]() В свойствах проекта EXE для конфигурации Debug делаешь так ![]() В свойствах проекта EXE для конфигурации Release делаешь также, но без _d Для динамической загрузки DLL из кода делаешь так
Я так делаю и всё отлично работает |