views:

74

answers:

1

My C++ windows program uses htmlhelp. Structure HH_POPUP includes field pszFont in format: "Facename[, point size[, CHARSET[, color[, PLAIN BOLD ITALIC UNDERLINE]]]]", but I cannot find any info about way to define the charset. My russian popup help is totally unreadeable.

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);
A: 

(Just a guess.) It might be that the charset needs to be defined in your HTML Help rather than the HH_POPUP structure. Is the charset specified in the META tags of your HTML Help topics? E.g.:

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

Also, is the corresponding language specified for your help file? E.g.:

<Project.hhp>

[OPTIONS]
Language=0x419 Russian (Russia)
Helen
Hmm, isn't UTF-8 a charset in windows? CP_UTF8 or so ?
Marco van de Voort