HtmlHelpW 函数 (htmlhelp.h)

显示帮助窗口。

使用 API 命令,可以指定要在帮助窗口中显示的主题、帮助窗口是三窗格帮助查看器还是弹出窗口,以及是否应通过上下文 ID、 HTML 帮助 URL 或关键字链接 (KLink) 查找来访问 HTML 主题文件。

语法

HWND HtmlHelpW(
  [in, optional] HWND      hwndCaller,
  [in]           LPCWSTR   pszFile,
  [in]           UINT      uCommand,
  [in]           DWORD_PTR dwData
);

参数

[in, optional] hwndCaller

指定调用 HtmlHelp 的窗口 (hwnd) 句柄。 帮助窗口归此窗口所有。

关闭帮助窗口时,除非所有者是桌面, 否则 HtmlHelp 会将焦点返回到所有者。 如果 hwndCaller 是桌面,则操作系统将确定焦点返回的位置。

此外,如果 HtmlHelp 从帮助窗口发送任何通知消息,只要你在帮助窗口定义中启用了通知消息跟踪,它们就会发送到 hwndCaller

[in] pszFile

根据 uCommand 值,指定编译的帮助 (.chm) 文件的文件 路径 ,或指定帮助文件中的主题文件的路径。

还可以指定 窗口类型 名称,前面带有大于 (>) 字符。

如果指定的命令不需要文件,则此值可能为 NULL。

[in] uCommand

指定要完成的 命令

[in] dwData

根据 uCommand 参数的值指定可能需要的任何数据。

返回值

根据指定的 uCommand 和结果, HtmlHelp 返回以下一项或两项:

  • 句柄 (帮助窗口的 hwnd) 。
  • NULL. 在某些情况下,NULL 表示失败;在其他情况下,NULL 表示尚未创建帮助窗口。

注解

语法适用于 ANSI 字符集。 使用 Unicode 字符集时, pszFile 参数的类型应为“LPCTSTR”。

使用 HTML 帮助 API 时,请将托管可执行文件的堆栈大小至少设置为 100k。 如果定义的堆栈大小太小,则为运行 HTML 帮助而创建的线程也将使用此堆栈大小创建,并且可能会导致失败。 (可选)可以从链接命令行中删除 /STACK,并删除可执行文件的 DEF 文件中的任何 STACK 设置, (在这种情况下,默认堆栈大小为 1MB,) 。 还可以使用 /Fnumber 编译器命令设置堆栈大小, (编译器将此大小作为 /STACK) 传递给链接器。

示例

以下示例调用 HH_DISPLAY_TOPIC 命令以打开名为 Help.chm 的帮助文件,并在名为 Mainwin 的帮助窗口中显示其默认主题。 通常,此命令中指定的帮助窗口是标准的 HTML 帮助查看器

HWND hwnd =
   HtmlHelp(
            GetDesktopWindow(),
            "c:\\Help.chm::/Intro.htm>Mainwin",
            HH_DISPLAY_TOPIC,
            NULL) ;

注意

htmlhelp.h 标头将 HtmlHelp 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定

要求

要求
目标平台 Windows
标头 htmlhelp.h
Library Htmlhelp.lib
DLL hhctrl.ocx

另请参阅

关于 HTML 帮助 API