![]() |
|
![]() ![]() ![]() |
|
xclock |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 14.5.2008 Репутация: нет Всего: нет |
Здравствуйте, помогите, пожалуйста, возникла следующая проблема:
Есть класс, который я писал, используя, библиотеки 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) И тут я в тупике, как решить проблему, помогите, пожалуйста? |
|||
|
||||
NovorosSupport |
|
|||
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 15.7.2009 Репутация: нет Всего: нет |
В принципе, отладчик должен был показать место ошибки. По опыту могу сказать, проблема с динамическим распределением памяти. Например, когда есть две динамически выделенных области памяти, одна из которых B[] инициализируется адресом, пересекащимся с другой областью A[]. Всё впорядке до поры до времени. Однако во время выполнения программы после освобождения блока памяти А[] и при последующем освобождении или использовании блока B[] сгенерируется указанное исключение, т.к. программа пытается получить доступ к памяти, которая ей уже фактически не принадлежит. На мой взгляд, если уж нужно интенсивно поработать с блоком А[], то помочь могут указатели. Однако и здесь нужно следить, когда была освобождена память А[]. Ещё один вариант - более позднее освобождение А[], что не всегда бывает оптимально. P.S. Каков вопрос, таков ответ ![]() |
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |