我编译了帮助文件help.chm,点击后能打开,放如vb中,
ret = Shell(App.Path + "\HELP.CHM", vbNormalFocus)
报错,怎么解决,你们是怎么做帮助文件的?“
ret = Shell(App.Path + "\HELP.CHM", vbNormalFocus)
报错,怎么解决,你们是怎么做帮助文件的?“
解决方案 »
- 我开发的软件使用以下的方法来操作数据库,不知怎么样?
- 如今我要维护一个spread2.5编写的程序,可是,spread2.5我找遍了internet也找不到,(连试用版都找不到)问高手,可以升到7.0版本吗?
- 我想用SUM来计算SQL中由指定的ID中的数据的总和。不知有没有相关的函数?谢谢
- ActiveBar控件问题,急问。如何显示快捷工具条的各子按钮的TooltipText?50
- 用MODEM做来电显示问题!我写好了一大半!存在一个小问题
- 怎样改变VB6.0的字体显示?
- ADODB中OpenSchema方法的怪题!!!
- VB 6.0的MS Comm控件对RS-232C串行口收发二进制数据
- 请高手帮忙设计一个算法,100分奉送!
- 与OICQ一样的好友菜单是使用什么控件的
- vb中 的 字符串转换成数字的问题 在线等啊 急啊
- 移除硬件设备,比如U盘或Mp3
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 LongPrivate Sub Form_Load()
ShellExecute hwnd, "open", App.Path + "\HELP.CHM", vbNullString, vbNullString, 1
End Sub
ret = Shell("hh.exe " + App.Path + "Help.chm", vbNormalFocus)
Shell "start.exe xxxxx", vbNormalFocus
winexec
shellexecute
都可以。
方法一 使用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帮助文件,还可用同样的格式打开、打印或查找一个文件或文档(参见该API的说明资料)。