[此函数可通过 Windows XP 和 Windows Server 2003 使用。 它在后续版本的 Windows 中可能已更改或不可用。]
显示对应于当前 UI 语言设置的帮助窗口。
语法
HWND MLHtmlHelp(
_In_ HWND hwndCaller,
_In_ LPCTSTR pszFile,
_In_ UINT uCommand,
_In_ DWORD_PTR dwData,
_In_ DWORD dwCrossCodePage
);
参数
-
hwndCaller [in]
-
类型:HWND
调用此函数的父窗口的句柄。
-
pszFile [in]
-
类型: LPCTSTR
指向缓冲区的指针,该缓冲区包含编译的帮助 (.chm) 文件的完全限定路径,或指定帮助文件中的主题文件。
-
uCommand [in]
-
类型: UINT
要完成的命令。 此函数直接仅支持 HH_DISPLAY_TOPIC 和 HH_DISPLAY_TEXT_POPUP。 对于任何其他命令,调用将不带 dwCrossCodePage 值转发到 HtmlHelp。
-
dwData [in]
-
类型: DWORD_PTR
根据 uCommand 参数的值,可能需要的任何数据。
-
dwCrossCodePage [in]
-
类型:DWORD
指示当前 UI 语言设置的代码页的 DWORD 值,例如 CP_ACP。
返回值
类型:HWND
根据指定的 uCommand 和结果, MLHtmlHelp 返回以下一个或两个:
- 句柄 (帮助窗口的 hwnd) 。
- NULL。 在某些情况下, NULL 表示失败;在其他情况下, NULL 表示尚未创建帮助窗口。
备注
如果当前语言的帮助文件路径出现问题,则会将调用转发到 HtmlHelp 进行标准处理。
关闭帮助窗口时,焦点将返回到所有者,除非所有者是桌面。 如果 hwndCaller 是桌面,则操作系统将确定焦点返回的位置。
此外,如果 MLHtmlHelp 从帮助窗口发送任何通知消息,则只要在帮助窗口定义中启用了通知消息跟踪,消息就会发送到 hwndCaller。
示例
以下示例调用 HH_DISPLAY_TOPIC 命令以打开名为 Help.chm 的帮助文件,并在名为 Mainwin
的帮助窗口中显示其默认主题。 通常,此命令中指定的帮助窗口是标准的 HTML 帮助查看器。
HWND hwnd = HtmlHelp(GetDesktopWindow(),
"c:\\Help.chm::/Intro.htm>Mainwin",
HH_DISPLAY_TOPIC,
NULL,
CP_ACP);
注意
使用此函数时,请将托管可执行文件的堆栈大小至少设置为 100k。 如果定义的堆栈大小太小,则为运行 HTML 帮助而创建的线程也将使用此堆栈大小创建,并且操作可能会失败。 (可选)可以从链接命令行中删除 /STACK,还可以删除可执行文件的 DEF 文件中的任何 STACK 设置, (默认堆栈大小在本例中为 1MB,) 。 还可以使用 /Fnumber 编译器命令设置堆栈大小, (编译器将此大小作为 /STACK) 传递给链接器。
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows 2000 专业版、Windows XP [仅限桌面应用] |
最低受支持的服务器 |
Windows Server 2003 [仅限桌面应用] |
标头 |
|
DLL |
|
Unicode 和 ANSI 名称 |
MLHtmlHelpW (Unicode) 和 MLHtmlHelpA (ANSI) |