简体   繁体   English

如何在C ++ Builder XE7 64位应用程序中使用`.CHM`文件?

[英]How may I use `.CHM` files with a C++ Builder XE7 64-bit application?

I'm using Embarcadero C++ Builder XE7. 我正在使用Embarcadero C ++ Builder XE7。 I would like to use native help support in my software solution. 我想在软件解决方案中使用本机帮助支持。 I have worked on a 32-bit application and used standard .CHM files without issue. 我已经在32位应用程序上工作,并且使用标准.CHM文件没有问题。

I am now working on a 64-bit application and am having problems using .CHM files. 我现在正在研究64位应用程序,使用.CHM文件时遇到问题。 If I press the F1 key, then a new help window is shown (help window for new ms Windows help) and there are no contents. 如果按F1键,将显示一个新的帮助窗口(新的ms Windows帮助的帮助窗口),并且没有任何内容。

I have the following questions: 我有以下问题:

  1. How may I use .CHM files (id context) with a 64-bit application? 如何在64位应用程序中使用.CHM文件(ID上下文)?
  2. What is the best approach for this? 最好的方法是什么?
  3. Is anyone using the new .HLP files? 是否有人在使用新的.HLP文件? If so, how may I create this file? 如果是这样,我该如何创建该文件?
  4. Is there any possibility to convert .CHM files to .HLP files? 是否有可能将.CHM文件转换为.HLP文件?

Overall question: How may I use .CHM files (id context) with a 64-bit application? 总体问题:如何在64位应用程序中使用.CHM文件(id上下文)?

I use neither Delphi nor Embarcadero XE. 我既不使用Delphi也不使用Embarcadero XE。 But I'll try to give some hints as a possible answer to your questions. 但是,我会尝试给出一些提示,作为您问题的可能答案。

  • Is there any possibility to convert *.chm files to *.hlp files? 是否可以将* .chm文件转换为* .hlp文件? This makes no sense because it's a step backwards (see below for further information). 这是没有意义的,因为它向后退了一步(有关更多信息,请参见下文)。
  • Is somebody using new *.hlp files? 有人在使用新的* .hlp文件吗? See above - used by many developers and by me for help authoring many years ago - not today. 参见上文-许多开发人员和我多年以来一直在寻求帮助来创作-而不是今天。
  • If yes, how can I create this *.hlp file? 如果是,如何创建此* .hlp文件? Makes no sense (see above and below) - by using Help Workshop (this is not HTMLHelp Workshop for the *.chm extension!!!) 毫无意义(请参阅上下)-通过使用帮助研讨会(这不是* .chm扩展名的HTMLHelp研讨会!!!)

Please note *.hlp is not a new extension for a new help format. 请注意* .hlp 不是新的帮助格式的新扩展名。 It's a very old Microsoft help format. 这是一种非常古老的Microsoft帮助格式。

HTMLHelp (*.chm) also is many years old, used as successor for years and application help on Windows operating system today. HTMLHelp(* .chm)也已有很长的历史,在Windows操作系统上已用作多年的继承者和应用程序帮助。 So you have to connect your application and build your own F1-Help. 因此,您必须连接您的应用程序并构建自己的F1-Help。

I'd recommend searching SO by keywords (tags) before asking here. 我建议在这里问之前按关键字(标签)搜索。 Eg see: 例如:

How to use CHM HTML Help file with Delphi XE application? 如何在Delphi XE应用程序中使用CHM HTML帮助文件?

How to add support of HTML help files (.chm) on Delphi XE2? 如何在Delphi XE2上添加对HTML帮助文件(.chm)的支持?

Further information (only if you really want *.hlp to work with): 进一步的信息(仅当您确实希望使用* .hlp时):

32-bit Help files have been around for a long, long while. 32位帮助文件已经存在很长时间了。 Based on Rich Text Format, these files are a proprietary format for Windows computers. 这些文件基于RTF格式,是Windows计算机的专有格式。 Windows XP was the last operating system version to include WinHelp viewer, yet the popular file format has continued to be used. Windows XP是最后一个包含WinHelp Viewer的操作系统版本,但仍继续使用流行的文件格式。 WinHelp (*.hlp) originally shipped with Windows 3.0 in 1990 and due to many vendors still utilizing these types of files and because a multitude of older applications are still in use, Microsoft has had to update the viewer application with each operating system after Windows XP. WinHelp(* .hlp)最初于1990年随Windows 3.0一起提供,由于许多供应商仍在使用这些类型的文件,并且由于仍在使用许多较旧的应用程序,因此Microsoft必须在Windows之后使用每个操作系统更新查看器应用程序XP。 In 2006, Microsoft announced intentions to phase out support for the help file platform stating that it simply no longer met the standards set forth as they planned the development and release of Windows Vista. 在2006年,Microsoft宣布打算逐步停止对帮助文件平台的支持,指出它不再满足计划中的Windows Vista开发和发布时所规定的标准。 But you'll find some downloads out there: 但是您会发现一些下载内容:

WinHlp32.exe is required to display 32-bit Help files that have the ".hlp" file name extension. WinHlp32.exe是必需的,以显示文件扩展名为“ .hlp”的32位帮助文件。 To view .hlp files on Windows 8.1, you need to install this application. 要在Windows 8.1上查看.hlp文件,您需要安装此应用程序。

Windows Help program (WinHlp32.exe) for Windows 8.1 . Windows 8.1的Windows帮助程序(WinHlp32.exe)

Note that this is for Windows 8.1 ONLY. 请注意,这仅适用于Windows 8.1。 And, if you need to read .hlp files in Windows 7 and Windows Vista, you'll find the downloads for those operating systems below: 而且,如果您需要在Windows 7和Windows Vista中读取.hlp文件,则可以在下面找到这些操作系统的下载文件:

Windows Help program (WinHlp32.exe) for Windows 8 Windows 8的Windows帮助程序(WinHlp32.exe)

Windows Help program (WinHlp32.exe) for Windows 7 Windows 7的Windows帮助程序(WinHlp32.exe)

Windows Help program (WinHlp32.exe) for Windows Vista Windows Vista的Windows帮助程序(WinHlp32.exe)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何使用P / Invoke从64位C#应用程序中调用64位C ++ DLL? - How can I use P/Invoke to call a 64-bit C++ DLL from a 64-bit C# Application? VirtualTreeView-Embarcadero C ++ Builder XE7-64位 - VirtualTreeView - Embarcadero C++ Builder XE7 - 64 bits C ++ Builder RAD Studio XE7更改面板的颜色 - C++ Builder RAD Studio XE7 change color of a Panel "如何从 32 位 C++ 应用程序启动 64 位 Java 应用程序?" - How to start 64-bit Java application from 32-bit C++ application? C ++ Builder XE7:在软件包中使用TChart - C++ Builder XE7: Using TChart in packages 如何使用FireDAC从C ++ XE3迁移到XE7? - How can I migrate from C++ XE3 to XE7 with FireDAC? 在Linux环境下构建32位和64位应用程序(C ++) - Linux environment to build 32 and 64-bit application (C++) 是否可以从为64位代码运行的“任何CPU”编译的.NET应用程序中调用64位本机C ++ DLL文件? - Is it possible to call 64-bit native C++ DLL files from a .NET application compiled for 'Any CPU' running as 64-bit code? 如何将 c++ 程序编译为 32 位可执行文件而不是 64 位 - How do I compile a c++ program into a 32-bit executable instead of 64-bit 如何在64位机器上将C ++程序编译为64位? - How to compile a C++ program as 64-bit on 64-bit machine?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM