Re: HtmlHelp зависает при создании нескольких окон
От: Sveolon  
Дата: 17.03.07 09:39
Оценка:
Решил проблему следующим образом:


    //Пока есть проблемы при открытии нескольких окон - будем открывать по одному
    //Перед открытием окна справки закроем все предыдущие
    HtmlHelp( NULL, NULL, HH_CLOSE_ALL, 0 );    
    

    //Было замечено, что если вызывать HH_DISPLAY_TOPIC сразу после HH_CLOSE_ALL, это может привести 
    //к плачевным последствиям, вплоть до вылетания программы. Поиски информации ни к чему не привели, 
    //но экспериментальным путём выяснено, что проблема не появляется при вызове с некоторым запаздыванием.
    //Думаю, что в этом некритическом месте одна секунда - это небольшая плата за стабильность системы.
    //Возможно, есть другой путь, но я его не нашёл.
    Sleep(1000);

    HWND win = HtmlHelp( caller, topic_name, HH_DISPLAY_TOPIC, NULL );
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.