Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Visual C++/MFC/WTL > Добавление поддержки MFC в ATL dll server


Автор: automax 25.3.2004, 11:01
Захотел на каком-то этапе добавить поддержку MFC в COM server на основе dll, созданный посредством ATL COM appWizard.

Добавляю в stdafx.h строчки:

#include <afxwin.h>
#include <afxdisp.h>

Запускаю, выдается ошибка:

d:\program files\microsoft visual studio\vc98\mfc\include\afxv_w32.h(14) : fatal error C1189: #error : WINDOWS.H already included. MFC apps must not #include <windows.h>

То есть VC6 не хочет чтобы я включал файл windows.h, но я это и не делаю это делает atlbase.h без которого ничего не может работать. А данная проверка делается с помощью файла afxv_w32.h, который включен в файл afxwin.h.

Посоветуйте что делать.

Автор: AntonChik 13.8.2013, 06:16
столкнулся с аналогичной проблемой.
может есть какие-то мысли куда глянуть?

---
вообще мне помог совет "try and include afxcoll.h before stdafx.h. I had the same problem and it fixed it."
еще разбираюсь, т.к. вылезли проблемы другого характера, но как мне кажется не связанные с исходной

Автор: Earnest 13.8.2013, 06:55
Там действительно есть пересечение заголовков, это разруливается спец. макросами (#define).
Проще всего поручить визарду эту работу, т.е. создать новый проект со всеми нужными свойствами, а потом либо добавить в него файлы, если их немного, либо списать настройки, конфиг, stdafx итд

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)