乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 80|回复: 4

[求助]VBA中怎样打开CHM帮助文件

[复制链接]

39

主题

89

帖子

6

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
245
发表于 2004-7-11 09:56:00 | 显示全部楼层 |阅读模式
VBA中怎样打开CHM帮助文件?点“帮助”按钮,打开文件。

252sn40vke0.gif

252sn40vke0.gif

回复

使用道具 举报

26

主题

589

帖子

10

银币

中流砥柱

Rank: 25

铜币
693
发表于 2004-7-11 13:33:00 | 显示全部楼层
可以使用如Shell "hh.exe C:\Program Files\AutoCAD 2002\Help\acad.chm", vbNormalFocus的方式来打开帮助文件。
回复

使用道具 举报

39

主题

89

帖子

6

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
245
发表于 2004-7-11 16:14:00 | 显示全部楼层
我想在自己程序的目录下打开啊
回复

使用道具 举报

15

主题

52

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
112
发表于 2004-7-11 17:32:00 | 显示全部楼层
用API来做,
先申明:
Public Const SW_SHOWNORMAL = 1
Public Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
                                (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _
                                ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
然后调用:
                                ShellExecute 0, "Open", 所在目录& "\帮助文件.chm", "", "", SW_SHOWNORMAL
回复

使用道具 举报

21

主题

166

帖子

7

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
250
发表于 2004-7-11 22:40:00 | 显示全部楼层
在程序中调用CHM帮助文件的方法。
方法一 使用F1键:
这种方法最简单,只需如下代码即可:
Private Sub Form_Load()
App.HelpFile = app.path & "\help.chm" '调用与主程序同目录下的help.chm帮助文件,按F1键调用
End Sub
方法二 使用SendKeys方法:
Private Sub Form_Load()
App.HelpFile = app.path & "\help.chm"
End Sub
private Sub CmdHelp_Click()
SendKeys "{F1}" '发送击键到活动窗口
End Sub
方法三 使用Shell函数:
private Sub CmdHelp_Click()
Shell "hh.exe help.chm", vbNormalFocus 'help.chm为指定的帮助文件,可包含路径。
End Sub
方法四 使用HtmlHelp函数:
先声明如下API:
Option Explicit
Private Declare Function HtmlHelpA Lib "hhctrl.ocx" (ByVal hwndCaller As Long, ByVal pszFile As String, ByVal uCommand As Long, ByVal dwData As Long) As Long
'hwndCaller指定调用者的窗口,pszFile指定要调用的文件,uCommand是发送给 HtmlHelp的命令,dwData是uCommand的参数。
然后在过程中调用:
private Sub CmdHelp_Click()
dim i as string
i = app.path & "\help.chm" '用变量i记录与主程序同目录下的help.chm帮助文件
HtmlHelpA Form1.hWnd, i, 0, 0
End Sub
方法五 使用ShellExecute函数:
先声明如下API:
Option Explicit
'声明API函数用于异步打开一个文档
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Private Const SW_SHOWNORMAL = 1
然后在过程中调用:
private Sub CmdHelp_Click()
dim a as long
Dim b As String
b = App.Path & "\help.chm" '用变量b记录与主程序同目录下的help.chm帮助文件
a = ShellExecute (0, "open", b, "", "", SW_SHOWNORMAL)
End Sub
以上五种方法各有优缺点,从代码的简单上讲,建议使用第二种方法。从功能上讲,建议使用第五种方法,因其不只用于打开CHM帮助文件,还可用同样的格式打开、打印或查找一个文件或文档
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-15 21:08 , Processed in 0.394329 second(s), 65 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表