Как определить кодировку для HTMLhelp? - PullRequest
0 голосов
/ 24 марта 2010

Моя программа на C ++ для Windows использует htmlhelp. Структура HH_POPUP включает поле pszFont в формате: «Facename [, размер точки [, CHARSET [, color [, PLAIN BOLD ITALIC UNDERLINE]]]]», но я не могу найти какую-либо информацию о способе определения кодировки , Моя русская всплывающая подсказка совершенно не читается.

HH_POPUP popupAttr;
memset(&popupAttr, 0, sizeof(popupAttr));
popupAttr.cbStruct = sizeof(popupAttr);
popupAttr.clrBackground    = COLORREF(-1);
popupAttr.clrForeground    = COLORREF(-1);
popupAttr.rcMargins.left   = -1;
popupAttr.rcMargins.bottom = -1;
popupAttr.rcMargins.right  = -1;
popupAttr.idString = UINT(helpInfo->dwContextId);
popupAttr.pt       = helpInfo->MousePos;
popupAttr.pszFont = _T("Arial,18,HOW_TO_DEFINE_THIS_CHARSET"); // please!!!
CWnd::GetDesktopWindow()->HtmlHelp(reinterpret_cast<DWORD>(&popupAttr), HH_DISPLAY_TEXT_POPUP);

Ответы [ 2 ]

0 голосов
/ 08 апреля 2011

Проблема решена путем преобразования текстового файла с всплывающими метками из UNICODE в ANSI. Спасибо всем за помощь

0 голосов
/ 24 марта 2010

(Всего лишь предположение.) Возможно, кодировку нужно определить в HTML-справке, а не в структуре HH_POPUP. Указана ли кодировка в тегах META ваших разделов справки HTML? E.g.:

<META http-equiv="Content-Type" content="text/html" charset="Windows-1251">

Кроме того, соответствующий язык указан для вашего файла справки? E.g.:

<Project.hhp>

[OPTIONS]
Language=0x419 Russian (Russia)
...