2009-11-17 84 views
3

我有一个在Borland的C++ Builder中编写的传统32位应用程序。我需要以编程方式从HtmlHelp文件中显示特定页面。到目前为止,我一直在通过HtmlHelp.ocx进行此操作,但在this thread中描述的x64版本的Windows Vista/Windows7上无法正常工作。以编程方式打开chm文件的最简单方法?

我不能编译该应用程序作为64位的可执行文件。因此,迄今为止唯一的解决方法是创建一个实现COM对象的32位组件,该对象加载并调用到32位DLL中,并将32位DLL接口公开为COM接口。

这听起来过于复杂,只是为了显示与特定话题CHML文件。必须有别的东西。但是它是什么?

回答

1

通过HTMLHELP API是不是这可能吗? (在MS SDK htmlhelp.h?)

与HH_DISPLAY_TOPIC

有些人首选通过.OCX要在过去,因为它是在IIRC W9X更可靠的,但我认为具体htmlhelpA功能不是问题在64位应用程序中。

这可能是因为这些功能也列出了一些OCX/DLL不存在在64位的土地,但它是值得一试。我无法轻易检查这一点。

+0

这不是一个64位应用程序。这是一个传统的32位应用程序,仍然应该在Win9x上运行。 – 2010-01-23 13:56:28

+0

为了支持其制造商多年来不支持的操作系统,您正在将自己捆绑在一起。只要放开它并使用*是*的htmlhelp API就容易了。或者,向你的老板解释说,不可能支持任何现代计算机(比如他的顾客今天将要购买的那些计算机),因为把所有工作都放在糟糕的旧垃圾箱诱饵上是非常重要的。 – 2010-04-10 14:12:40

+0

@Donal:我是我自己的老板,所以没有必要exaplanations :-)这个问题是关于一个旧的共享软件游戏,仍然卖得很好,足以证明帮助的理由,但还不足以重写帮助刮。 – 2011-04-21 20:36:47