init = new CInit;
init->p = (void *)this;
TabItem.mask = TCIF_PARAM;
TabItem.lParam = (LPARAM)init;
m_TabCtrl.SetItem(0, &TabItem);
VERIFY(init->Create(CInit::IDD, &m_TabCtrl)); <--------------- тут
init->SetWindowPos(NULL, 2, 25, 0, 0, SWP_NOSIZE | SWP_NOZORDER);
init->ShowWindow(SW_SHOW);
Ограничение на кол-во переменных в классе/диалоге?
Добавляю в него CString переменную и программа рушится на:
Ошибка:
Unhandled exception at 0x7c911909 in ZHKHconf.exe: 0xC0000005: Access violation reading location 0xfffffff8.
В моём же коде рушится на:
Код:
То есть программа рушится при инициализации того класса, в который я добавил новую CString переменную (класс Cinit init). Если переменную не добавлять, всё работает. Если запускать программу под дебаггером, то тоже всё работает..
Отсюда вопрос: может существует какое-то ограничение на кол-во переменных в классе? Или ограничение памяти? Я даже не знаю.. В настройках проекта (Linker-System) размеры хипа и стэка выставлены в 0 (я так понимаю, это без ограничений). Подскажите, в чём может быть проблема.
Ошибка в том, что кто то обращается к еще неинициализированному объекту. Узнать кто это делает поможет отладчик (F11).
Цитата: oxotnik333
Ошибка в том, что кто то обращается к еще неинициализированному объекту. Узнать кто это делает поможет отладчик (F11).
Да, спасибо, действительно ) ошибка оказалась чуть выше... обратился к переменной класса до Create()..