Есть ActiveX-компонент, созданный с помощью MFC ActiveX Control Wizard в Visual C++ 7.0. В классе самого контрола (CControlCtrl) добавил переменную типа BOOL (или bool) m_bTreeVisible. В функции CControlCtrl::DoPropExchange() пытаюсь произвести сериализацию этой переменной:
void CControlCtrl::DoPropExchange(CPropExchange* pPX)
{
ExchangeVersion(pPX, MAKELONG(_wVerMinor, _wVerMajor));
COleControl::DoPropExchange(pPX);
// TODO: Call PX_ functions for each persistent custom property.
PX_String(pPX, "MyText", m_strMyText);
PX_Bool(pPX, "TreeVisible", m_bTreeVisible);
}
Но приложение, в котором используется этот контрол, при запуске "падает". Значение типа CString сохраняется нормально. Подскажите, где я дурак и как правильно сохранять значения? Или где об этом можно почитать?
Здравствуйте, Valeriy_Gourov, Вы писали:
V_G>Есть ActiveX-компонент, созданный с помощью MFC ActiveX Control Wizard в Visual C++ 7.0. В классе самого контрола (CControlCtrl) добавил переменную типа BOOL (или bool) m_bTreeVisible. В функции CControlCtrl::DoPropExchange() пытаюсь произвести сериализацию этой переменной:
V_G>V_G>void CControlCtrl::DoPropExchange(CPropExchange* pPX)
V_G>{
V_G> ExchangeVersion(pPX, MAKELONG(_wVerMinor, _wVerMajor));
V_G> COleControl::DoPropExchange(pPX);
V_G> // TODO: Call PX_ functions for each persistent custom property.
V_G> PX_String(pPX, "MyText", m_strMyText);
V_G> PX_Bool(pPX, "TreeVisible", m_bTreeVisible);
V_G>}
V_G>
V_G>Но приложение, в котором используется этот контрол, при запуске "падает". Значение типа CString сохраняется нормально. Подскажите, где я дурак и как правильно сохранять значения? Или где об этом можно почитать?
А ты дебуггером пробовал воспользоваться? Обычно помогает. И кстати все же какого тапа у тебя переменная BOOL или bool? Там есть насколько я помню реализация только для BOOL.
Здравствуйте, Denwer, Вы писали:
D>А ты дебуггером пробовал воспользоваться? Обычно помогает. И кстати все же какого тапа у тебя переменная BOOL или bool? Там есть насколько я помню реализация только для BOOL.
В принципе, я не полный дурак

. В отладчике смотрел, но глубоко в код MFC пока не лез. Я не понял, почему оно не работает. А насчёт типа переменной, то мне пока не принципиально — BOOL или bool. Пробовал и то, и другое.