Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка Windows Forms > МFC в Windows Forms


Автор: xclock 14.5.2008, 23:59
Здравствуйте, помогите, пожалуйста, возникла следующая проблема:
Есть класс, который я писал, используя, библиотеки afxwin.h, afxdb.h.
При попытке запустить приложение CLR, с подключенными этими библиотеками, происходило следующие: 
1) Сначала вылезала такая ошибка:
“fatal error C1189: #error : Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLL or do not use /MD[d]”
Решение: #define _AFXDLL
2)Потом стали вылезать ошибки такого типа error C3641: DrawState’ : invalid calling convention ‘__stdcall ‘ for function compiled with /clrure or /clr:safe
Решение: project properties -> General -> Common Language Runtime c /clrure НА /clr
3) Ура, компиляция завершена, НО ((( при запуске вылетает эта ошибка:
_CrtIsValidHeapPointer(pUserData)

И тут я в тупике, как решить проблему, помогите, пожалуйста?

Автор: Любитель 15.5.2008, 17:52
А в не-дотнетовском приложении всё работает нормально (класс твой)?

Автор: source777 16.5.2008, 00:10
нафига ты пытаешься использовать класс, жестко привязанный к GUI-системе, в другой системе. Либо перепиши класс под Windows Forms, либо просто так, чтобы он вообще в принципе не использовал afxwin.h, afxdb.h. 

P.S. Для чего класс предназначен твой сказал бы, а то может велосипед очередной...

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