CEM>Нашёл очень такой неприятный глюк в сабже.
CEM>Если подсунуть ему Folder1\File1.chm, а потом(закрыть и) подсунуть
CEM>Folder2\File1.chm, то откроется Folder1\File1.chm, на папку вообще никак не реагирует. Кто-нить с таким сталкивался?
CEM>Требуется примерно следующее: пользователь должен мочь менять настройки хелпа (пестоположение файла) во время работы с программой.
CEM>И вот если имена файлов совпадают(а они в 99% у нас совпадают) то облом
SL>Читай KB267962 в MSDN. Если кратко, то там советуют называть файлы по-разному, потому что кругом баги.
SL>Как вариант попробуй явно закрывать все окна перед сменой файла:
SL>SL>HtmlHelp(hWnd, NULL, HH_CLOSE_ALL, NULL);
SL>
Ясно-понятно, разными... Но каждому юзеру не объяснишь, даже если мануал есть.
CLOSE_ALL пробовал первым делом. Он работает тока при окрытии с топика и только один раз. Это вообще позабавило
Вобщем, решается просто:
После смены файла надо говорить:
HMODULE hModule = GetModuleHandle(_T("HHCtrl.OCX"));
if(hModule)
{
FreeLibrary(hModule);
hModule = LoadLibrary(_T("HHCtrl.OCX"));
}
и©точник:
хелпваре
ps. ща пойду тестировать все оставшиеся операционки...