Статья:
QnA: error LNK2005: _DllMain@12 already defined ...Автор(ы): Ivan
Дата: 13.11.2004
Неужто баг очередной? Создаем ATL проект, в опциях убираем аттрибуты, включаем поддержку MFC, включаем Allow merging of proxy/stub code, компилим проект. ВСЕ ок. Закрываем проект. Можно выйти из студии. Открываем опять этот проект, и делаем Rebuild Solution, получаем ошибки:
Linking...
mfcs71d.lib(dllmodul.obj) : error LNK2005: _DllMain@12 already defined in MSVCRTD.lib(dllmain.obj)
Авторы:
Ivan
Аннотация:
Неужто баг очередной? Создаем ATL проект, в опциях убираем аттрибуты, включаем поддержку MFC, включаем Allow merging of proxy/stub code, компилим проект. ВСЕ ок. Закрываем проект. Можно выйти из студии. Открываем опять этот проект, и делаем Rebuild Solution, получаем ошибки:
Linking...
mfcs71d.lib(dllmodul.obj) : error LNK2005: _DllMain@12 already defined in MSVCRTD.lib(dllmain.obj)
Вообще то рекомендованный MS способ это скопировать файл dllmodul.cpp и вставить его в свой проект как локальный и менять DllMain уже в нем.
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, AlexDav, Вы писали:
AD>>Вообще то рекомендованный MS способ это скопировать файл dllmodul.cpp и вставить его в свой проект как локальный и менять DllMain уже в нем.
А>А где такая рекомендация?
Писал со слов Тома Арчера. Врядли мужик врет
(тем более что способ то работает)
Здравствуйте, AlexDav, Вы писали:
А>>А где такая рекомендация?
AD>Писал со слов Тома Арчера. Врядли мужик врет (тем более что способ то работает)
Вообще-то рекомендованный MS способ описан здесь:
A LNK2005 error occurs when the CRT library and MFC libraries are linked in the wrong order in Visual C++
It is always bad to give advices, but you will be never forgiven for a good one.
Oscar Wilde
Здравствуйте, ekamaloff, Вы писали:
E>Вообще-то рекомендованный MS способ описан здесь:
E>A LNK2005 error occurs when the CRT library and MFC libraries are linked in the wrong order in Visual C++
Интересно, а в мелкомягком сами не могли это сделать???
1. Open Msdev\Mfc\Include\Afx.h.
2. Select the lines between #ifndef _AFX_NOFORCE_LIBS and #endif //!_AFX_NOFORCE_LIBS.
3. Copy the selection to the Windows Clipboard.
4. Create a new text file.
5. Paste the contents of the Clipboard into this new file.
6. Save the file as Msdev\Mfc\Include\Forcelib.h.