CreateControl - попадает на deadlock
От: -AdyOS-  
Дата: 17.02.05 09:00
Оценка:
Всем привет!
Есть такая проблемка. Создаю ATL проект, добавляю объект (Lite Composite Control) на него кидаю ТабКонтрол, после этого в ините создаю закладки (4 штуки, 3 из них динамически).
У меня есть интерфейс, который я потом наследую к тому интерфейсу который был создан студией. Так вот, если не делать это наследование, то все закладки создаются без проблем, а если наоборот, система наглухо виснет и помогает только глобальный ресет.Это раз. Вот кусок кода созданимя закладок:


    m_pPageTelnet = new CPageTelnet;
    m_pPageTelnet->Create(m_hWnd);
    //m_pPageTelnet->SetMenu(MAKEINTRESOURCE(IDR_MENU_TELNET));
    
    m_pPageURL1 = new CAxWindow;
    m_pPageURL1->Create(m_hWnd, NULL, NULL, WS_CHILD | WS_VISIBLE | WS_VSCROLL);
    m_pPageURL1->CreateControlEx(CComBSTR("about:blank"));
    //Sleep(1000);
    m_pPageURL2 = new CAxWindow;
    m_pPageURL2->Create(m_hWnd, NULL, NULL, WS_CHILD | WS_VISIBLE | WS_VSCROLL);
//  Sleep(1000);
    m_pPageURL2->CreateControlEx(CComBSTR("MSHTML:<HTML><BODY><H1>HELL</H1></BODY></HTML>"));
//Sleep(1000);

    
    m_pPageURL3 = new CAxWindow;
    m_pPageURL3->Create(m_hWnd, NULL, NULL, WS_CHILD | WS_VISIBLE | WS_VSCROLL);
    m_pPageURL3->CreateControlEx(CComBSTR("MSHTML:<HTML><BODY><H1>HELL</H1></BODY></HTML>"));
    
    m_pPageURL4 = new CAxWindow;
    m_pPageURL4->Create(m_hWnd, NULL, NULL, WS_CHILD | WS_VISIBLE | WS_VSCROLL);
    m_pPageURL4->CreateControlEx(CComBSTR("http://ya.ru"));



Если первый CreateControlEx создать с непустой ссылкой (например, на http://ya.ru), то при создании второго — система виснет, если поставить слипы перед вторым — все нормально. Данный код работает нормально (т.к. ссылка на страницу создается в последней вкладке). Вообщем чё за глюк такой в упор не пойму! Может кто сталкивался с такой фигней, посоветуйте, пожалуйста, как бороться!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.