问题标签 [html-help]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
html-help - 如何处理 CMFCPropertySheet / CMFCPropertyPage 上的帮助按钮?
根据 MSDN:
CPropertySheet 中的帮助仅受 F1 键和帮助按钮支持。默认情况下,帮助按钮出现在应用程序框架中。无需用户干预。当用户在属性表中添加每个页面的帮助信息时,帮助机制会在单击帮助按钮时自动显示该页面的帮助信息。
我认为对于CMFCPropertySheet. 所以我首先开始尝试处理处理WM_HELPINFO程序:
没用。然后我添加了一个IDHELP按钮点击处理程序:
没用。
那么当用户按下工作表上的帮助按钮时,我应该如何显示正确的帮助主题?使困惑。
更新
我在工作表和页面上都试过这个 - 不起作用:
chm - 了解 [ALIAS] 部分的目的
我一直在尝试将大型 WinHelp 项目转换为 HtmlHelp,以便与我的 MFC 应用程序一起使用。
我大部分时间都在工作;但是,我发现从我的应用程序中的许多上下文中调用帮助会产生完全无用的错误消息。
无法启动帮助。
看来,如果我将相应的条目添加到该[ALIAS]部分,那么它就可以工作。
我的问题是,我真的需要为每个主题都这样做吗?使用 WinHelp,我必须添加到该[ALIAS]部分的唯一条目是那些我想成为其他东西的别名的主题。
HTML帮助有没有办法知道HID_FILE_OPENHtml\HID_FILE_OPEN.htm如果没有我为每个主题明确输入它,与帮助文件相对应的方法?
html-help - HH.EXE 可以显示 HTML/JPEG 文件
显然,可以使用 HH.EXE,即 Microsoft 的 CHM 文件查看器查看 HTML 和 JPEG 文件(可能是其他文件,没有尝试)。
试试“HH somefile.html”。它在 Windows XP 和 Windows 10 上进行了测试。这是否记录在任何地方?
c# - 在 c# windows 应用程序中在哪里指定主题 ID
我是 C# windows 应用程序的新手。我想使用Microsoft Visual Studio 2010 for windows 应用程序工具栏中的帮助提供程序添加自定义帮助文件。
我可以添加我的帮助文件,并且工作正常。我想获得上下文相关的帮助,这与Help.ShowHelp(). 在属性窗口中,我们有一个 HelpNavigator 属性,其中包含.Topic, .TopicId, .AssociateIndex, .TableOfContents, .Index,等选项.Find等选项。我已经选择.TopicId了,但我想知道在哪里指定我的主题 ID。我有两个问题
- 是否可以通过在应用程序的 .cs 文件中编写代码来实现?
- 如果是,那么帮助导航器属性的目的是什么?
chm - 重新编译 CHM 文件
我正在编写一个脚本,该脚本应该能够将其他信息添加到.chm文件中。
用命令反编译后hh.exe -decompile outputFolder fileName.chm,我得到了 html 文件,以及其他 2个扩展名为.hhc和.hhk的文件。
编辑完 html 文件后,我想将这些文件重新编译成一个.chm文件。我读到我还需要一个.hhp文件才能做到这一点,但这不是在反编译过程中生成的。
我该如何解决这个问题?
chm - 链接到 HelpnDoc 中的特定主题使用 Visual C++ HtmlHelp 编译 CHM
我在这里很困惑。我已将我的 CHM 帮助从 HtmlHelp Workshop 迁移到 HelpNDoc。我编译了 CHM 文件并更新了我的 MFC 项目以指向正确的主题:
上述方法适用于我之前的 CHM 文件。当我调用此调用时,会发生以下情况:
它没有找到它。现在我在这里遇到了困难,因为如果我在 IDE (VS2017) 中单击 F1,它会将我带到这里。本文提供了一个显示主题的示例:
上述HtmlHelpAPI 调用采用 4 个参数。然而,在我的CDialogEx派生类中,我只有两个参数:
所以我需要找到一种方法来打开我的 CHM 文件中的任何主题,这些主题是用 HelpNDoc 编译的。
更新
在进一步的研究中,我找到了讨论HtmlHelp我正在使用的 API 调用的主题(在CWinApp课堂上找到)。它指出:
参数
dwData指定附加数据。使用的值取决于 nCmd 参数的值。
nCmd指定请求的帮助类型。有关可能值的列表以及它们如何影响 dwData 参数,请参阅关于 Windows SDK 中的 HTMLHelp API 函数中描述的 uCommand 参数。
所以我们在这里结束了,在那里我们获得了一个关于HH_DISPLAY_TOPIC. 我们已经绕了一圈。仔细看它说:
指定已编译的帮助 (.chm) 文件,或已编译的帮助文件中的特定主题。
要指定定义的窗口类型,请插入一个大于 (>) 字符,后跟窗口类型的名称。
所以我的代码应该还是没问题的。
html-help - 看不到 Virtual TreeView 的 HTML 帮助内容
我从https://www.jam-software.com/virtual-treeview/下载 Virtual TreeView 。打开里面的 HTML 帮助后,我得到一个警告,然后我继续,将在左侧面板中看到目录,我也可以在帮助中搜索。但是,每当我尝试单击左侧面板中的项目时,左侧面板中都没有出现任何内容。我能看到的只是一个白色的背景。此问题仅在 Windows 7 中出现。
我尝试在 WIndows XP 中打开相同的 HTML 帮助,然后我将能够在右侧面板中看到内容。
为什么?
windows-10 - 使用 HTML Help Workshop 1.3 和 HTML5 和 Javascript DOM 并使用 HTML 帮助文件定位 Windows 10?
我正在使用通过转换较旧的 WinHelp 帮助源(从使用 Microsoft 转换工具使用 Word 编辑的 .RTF 文件转换而来)生成的 HTML 帮助源。这个来源自从它被转换以来就没有被触及过,并且在 2014 年左右或更早的某个时候完成了一些初步工作。
我目前正在使用带有 Windows 7 PC 的 Visual Studio 2005 来更新此 HTML 帮助源。我创建了一个项目并添加了所有各种源:HTML 文件、包含图像的 BMP 文件、包含 JavaScript 的文件和包含 CSS 的文件。较旧的基于 WinHELP 的内容使用了许多弹出窗口,这些弹出窗口转换为单个文件,并且通过仅合并这些仅在一个地方使用的小文件,我将文件数量减少了三分之一。
我要做的第一件事是手动清理标签,通过合并和重写内容来消除文件,并更改旧样式标记以使用更现代的 CSS。
我的帮助文件的目标是 Windows 7 和 Windows 10 的桌面用户。一旦我清理了基础知识,我计划使用此源迁移到 Visual Studio 2015。我已经完成了一个将 VS 2005 转换为 VS 2015 的测试项目,转换似乎工作正常,并且 HTML 源代码编译成可用的 .chm 文件。
据我所知,Microsoft 的 HTML Help Workshop 似乎正在维护中,但不再处于积极开发中。根据HTML 帮助研讨会和文档下载页面,最后一个版本似乎是 2012 年发布的 1.32,尽管它适用于 HTML 帮助 1.4 版。另请参阅Microsoft Docs 中的Microsoft HTML 帮助 1.4。
Visual Studio 2005 表明某些标记(我认为是 HTML4)已被弃用。无论如何, html 帮助源似乎都可以.chm很好地编译为文件,并且生成的 .chm 文件在 Windows 7 下可以正常工作。
我对这个编译过程有点困惑。我的印象是,workshop 编译器将所有各种 .html 文件连同它生成的几个文件打包在一起,然后将它们全部压缩到一个存档中。
这是否意味着我使用的 HTML 标准取决于我假设的 Microsoft 浏览器、Edge 以及它支持的 HTML 标准?
这个问题真的意味着 HTML Help Workshop 中是否存在任何依赖关系,这意味着我不能使用 HTML5 或更新的 CSS?
有一些简单的 Javascript 使用div标签进行一些基本的用户交互。这工作得很好。我是否可以期望 Microsoft Edge 支持的任何 Javascript HTML DOM 都可用于此帮助文本?
c++ - HTMLHelp 函数在 64 位应用程序上崩溃
我正在为我的 MFC winforms 应用程序集成特定于上下文的帮助。根据崩溃日志,调用以下函数会使我的应用程序崩溃,而 hhctrl.ocx 是罪魁祸首。我认为问题出在 System32 位文件夹中的 64 位版本的 hhctrl.ocx 上,因为我的应用程序在 32 位模式下工作正常。我尝试注册 32 位和 64 位 ocx 但这没有帮助。
我知道这是用于 html 帮助集成的非常古老的 API。如果我无法解决这个问题,是否有用于将帮助文件集成到 MFC 应用程序的替代框架?


