问题标签 [chm]

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.

0 投票
10 回答
4937 浏览

windows - Windows 帮助文件 - 有哪些选项?

回到过去,Help 不是微不足道的,而是可能的:生成一些带有特殊标签的时髦 .rtf 文件,通过编译器运行它,你会得到一个实际上运行良好的 WinHelp 文件 (.hlp)。

然后,微软认为 WinHelp 不再时髦和酷,并转而使用 CHM,直到他们实际上从 Vista 中删除了 WinHelp。

现在,CHM 可能不错,但每个尝试在网络上打开 .chm 文件的人都会知道由安全限制引起的漂亮的“网页导航已取消”屏幕。

虽然有一些方法可以使 CHM 脱离网络工作,但这并不是一个好的选择,因为当用户按下帮助按钮时,他需要帮助,而不必进行一些时髦的设置。

底线:我发现 CHM 绝对无法使用。但是随着 WinHelp 不再是一个选项,我想知道有什么替代方案,尤其是在与我的应用程序集成时(即对于 WinHelp 和 CHM,有一些功能可以让您直接跳转到某个主题)?

PDF 的缺点是需要 Adob​​e Reader(或不是很多人使用的更轻量级的之一)。我可以忍受这种看法,因为这是当今的一种标准,但你能告诉它可靠地跳转到给定的页面/锚点吗?

HTML 文件似乎是最好的选择,然后你只需要处理不同的浏览器(CSS 和其他东西)。

编辑:我正在寻找创建自己的帮助文件。由于我是“无需设置,只需提取并运行”理念的粉丝,我过去曾多次遇到过这个问题,因为我的许多用户会从网络上运行它,这正是导致这个问题的原因。

因此,我正在寻找一种更强大且面向未来的方式来为我的用户提供帮助,而无需为我制作的每个应用程序编写不同的帮助系统。

CHM 是一种非常好的格式,但是 Security Stuff 使它无法使用,因为帮助系统应该为用户提供帮助,而不是产生更多问题。

0 投票
1 回答
506 浏览

indexing - HTML Help keyword location

I'm writing a manual and some important keywords are repeated in several pages. In the project's index I defined the keywords like this:

It works but instead of the title the dialog shows the keyword and the name of the project repeated three times.

Here's how it looks: http://img54.imageshack.us/img54/3342/sokeywordjs9.png

How can I display the tile of the page that contains the keyword in that dialog? I would like to show like this:

Thanks

0 投票
4 回答
2288 浏览

delphi - Opening two HTMLHelp files simultaneously in Delphi causes both help windows to hang

In Delphi, the application's main help file is assigned through the TApplication.HelpFile property. All calls to the application's help system then use this property (in conjunction with CurrentHelpFile) to determine the help file to which help calls should be routed.

In addition to TApplication.HelpFile, each form also has a TForm.HelpFile property which can be used to specify a different (separate) help file for help calls originating from that specific form.

If an application's main help window is already open however, and a help call is made display help from a secondary help file, both help windows hang. Neither of the help windows can now be accessed, and neither can be closed. The only way to get rid of the help windows is to close the application, which results in both help windows being automatically closed as well.

Example:

The last line of code above opens the secondary help window (but with no content) and then both help windows hang.

My Question is this:

  1. Is it possible to display two HTMLHelp windows at the same time, and if so, what is the procedure to be followed?

  2. If not, is there a way to tell whether or not an application's help window is already open, and then close it programatically before displaying a different help window?

(I am Using Delphi 2007 with HTMLHelp files on Windows Vista)

UPDATE: 2008-09-18

Opening two help files at the same time does in fact work as expected using the code above. The problem seems to be with the actual help files I was using - not the code.

I tried the same code with different help files, and it worked fine.

Strangely enough, the two help files I was using each works fine on it's own - it's only when you try to open both at the same time that they hang, and only if you open them from code (in Windows explorer I can open both at the same time without a problem).

Anyway - the problem is definitely with the help files and not the code - so the original questions is now pretty much invalid.

UPDATE 2: 2008-09-18

I eventually found the cause of the hanging help windows. I will post the answer below and accept it as the correct one for future reference. I have also changed the questions title.

Oops... It seems that I cannot accept my own answer...

Please vote it up so it stays at the top.

0 投票
1 回答
2289 浏览

visual-c++ - 将 HTMLHelp.lib 与 x64 链接

我有一个使用 HtmlHelp 的 VS05 C++ (MFC) 项目(函数 HTMLHelpA,从 HmleHelp.lib 链接,来自 HTML HElp Workshop v1.4)。32 位版本编译和链接很好。

64 位版本可以正常编译,但在链接时在 HTMLHelpA 上出现“未解决的外部”错误。

所以,我的问题很简单:有没有办法在 x64 中使用 HTMLHelp?

0 投票
5 回答
37958 浏览

open-source - Any free alternative to Robohelp?

Any free alternative to Robohelp? Prefer open source

Need some sort of online help authoring tool for an open source project.

0 投票
3 回答
3658 浏览

chm - HTML 帮助研讨会在编译 CHM 时崩溃

尝试使用 Microsoft HTML Help Workshop 构建 CHM。当我单击编译时,HTML Help Workshop 状态如下:

发生内部错误。错误记录已保存到 c:\os.err。

该文件的唯一内容是:

((今天的日期和时间))
Microsoft HTML Help Workshop 版本 4.74.8702
HHA 版本 4.74.8702
htmlproc.cpp(114):断言失败:(pszTmp == m_pCompiler->m_pHtmlMem->psz)

该错误仅发生在少数选定的大型项目中,并且在命令行和 HTML Help Workshop GUI 中都会发生。

是什么导致此错误发生,如何修复我的项目以通过编译器运行?

0 投票
1 回答
1762 浏览

c# - 有哪些好的工具可用于为 .net 应用程序创建在线帮助?

我有一个 winforms 应用程序,该应用程序目前附带一个用于上下文相关帮助文档(不是 API 文档)的 chm 文件,该文件是使用 MS HTML Help Workshop 创建的。

我想转向在线文档(不必随产品一起提供,可以轻松更新等)。这类事情推荐使用哪些工具,它们的优缺点是什么?

我希望能够做到以下几点:

  • 在我的网络服务器上托管帮助文件
  • 提供上下文相关的帮助
  • 有合理的导航/目录寻求帮助
  • 为应用程序的不同主要版本托管不同版本的帮助
  • 轻松编辑帮助。像 wiki 这样的东西会很好,最好有好的所见即所得编辑器。
  • 从帮助文件轻松创建 PDF 手册
  • 不必为工具支付(很多)

我想我可以通过 HTML Help Workshop 和一些工作来完成大部分工作,但如果有更好的工具,我想知道。

0 投票
11 回答
13201 浏览

version-control - 什么是写用户手册(帮助文件)的好工具,集成了版本控制

编写用户手册的人不一定是程序员,他们需要一个可视化编辑器。一个主要问题是创作工具的内部格式;它应该是可读的文本/html,因此很容易比较签入版本控制的各个页面的版本。

0 投票
3 回答
15271 浏览

chm - 如何打开 .hxs 文件?

我知道 hxs 文件是编译后的帮助文件,是 .chm 文件的替代品,但我似乎无法打开它们。

我读到您使用帮助资源管理器 dexplore.exe 阅读它们:C:\Program Files\Common Files\microsoft shared\Help 9\dexplore.exe

当我尝试使用 dexplore 打开文件时,它会要求我将文件保存到磁盘,或使用其他程序打开。

有任何想法吗?

0 投票
1 回答
1284 浏览

winforms - WinForms:加载本地化帮助 (chm) 文件

加载特定于语言环境(即翻译)的编译帮助文件(.chm)的最佳方式是什么?我们的安装会将它们与包含资源的附属程序集一起部署。我想重新使用 .NET 框架用于加载附属程序集的相同探测规则,并且我绝对想避免编写自己的搜索算法,因为例如,我必须处理特定情况,例如作为“zh-CN/zh-Hans/zh-CHS”。

我找不到任何 System.Windows.Forms.Help 类表明您可以提供 CultureInfo 对象来指定特定文化。还有其他人遇到过这个吗?谢谢!