|
CHM文件是一种什么文件,如何打开 |
|
 |
CHM文件是一种什么文件,如何打开?(Mike DU)
|
| |
|
 |
这是压缩存储的HTML格式的帮助文件,微软计划使用这种格式替代.hlp格式。如果想制作这种文件可以访问http://msdn.microsoft.com/workshop/author/Htmlhelp/下载HTML Help Work Shop,编辑方法参考QA003204 "用Htmlhelp Workshop制作符合Windows 98规范的帮助文件"。从Visual Basic 6.0开始,VB直接支持chm格式的帮助,使用下面的语句:
App.HelpFile = App.Path & "\help.chm"
然后在程序中按F1,帮助就出来了。如果想建立上下文帮助,只需要将控件的HelpContextID属性值和帮助文件中的Topic ID对应起来就可以了。
也可以使用API的HtmlHelp函数调用这个文件。下面以VB为例说明如何在程序中打开这种文件。
首先建立一个模块,输入以下内容:
Const HH_DISPLAY_TOPIC = &H0
Const HH_SET_WIN_TYPE = &H4
Const HH_GET_WIN_TYPE = &H5
Const HH_GET_WIN_HANDLE = &H6
Const HH_DISPLAY_TEXT_POPUP = &HE ' 调用弹出式帮助
Const HH_HELP_CONTEXT = &HF ' 调用由dwData指定的上下文敏感帮助
Const HH_TP_HELP_CONTEXTMENU = &H10 ' 弹出式文字帮助, 类似WinHelp的HELP_CONTEXTMENU
Const HH_TP_HELP_WM_HELP = &H11 ' 弹出式文字帮助,类似WinHelp的HELP_WM_HELP
Declare Function HtmlHelp Lib "hhctrl.ocx" Alias "HtmlHelpA" _
(ByVal hwndCaller As Long, ByVal pszFile As String, _
ByVal uCommand As Long, ByVal dwData As Long) As Long
然后使用下面的代码调用帮助:
' H在Click事件中调用HTML帮助文件
Private Sub HH_DISPLAY_Click()
' hWnd是一个在其他地方定义的常数,是要显示的帮助窗口的父窗口的句柄
Dim hwndHelp As Long
' 返回值是创建的帮助窗口的句柄。
hwndHelp = HtmlHelp(hWnd, "myfile.chm", HH_DISPLAY_TOPIC, 0)
End Sub
' 使用变量ContextID指定要显示的主题
Private Sub HH_HELP_Click()
Dim hwndHelp As Long
' 返回值是创建的帮助窗口的句柄。
hwndHelp = HtmlHelp(hWnd, "myfile.chm", HH_HELP_CONTEXT, ContextID)
End Sub
另外,推荐一个站点Help Technology Centre(http://www.mvps.org/htmlhelpcenter/),这个站点包括了最全面的HTML Help的工具和资料。
云刀的意见:
用默认方式打开更方便。(我省略了声明部分...)
ShellExecute hwnd, "open", "myfile.chm", vbNullString, vbNullString, SW_SHOW
(主持人注:对于打开CONTEXT,这种方式是最方便的,但HtmlHelp函数可以显示指定TOPIC。)
amazon的意见:
Private Sub Command1_Click()
Shell "hh.exe abc.chm", vbNormalFocus
End Sub
(主持人注:这个方法和云刀的方法类似。)
相关问题:
QA004378 "如何制作上下文相关的HTML帮助"
QA004865 "打开chm文件时跳到的指定页面"
此问题由李海回答。
附加关键字:编程, 源程序, programming, source code, Visual Basic, VB, 磁盘、文件和目录, disk, file, fat, directory, folder, 其他方面, 。
|
| |
|
| |
|
| |
|
|
| |
|
|
|
|