用API函数
Public Declare Function HtmlHelp Lib "HHCtrl.ocx" Alias "HtmlHelpA" ( _
               ByVal hwndCaller As Long, ByVal pszFile As String, _
               ByVal uCommand As Long, ByVal dwData As Any) As Long例如:
Call HtmlHelp(0, App.HelpFile, HH_DISPLAY_TOPIC, "1.htm")当然要要设App.HelpFile = "HelpName.chm"

解决方案 »

  1.   

    我也只会用按钮来触发连接相关帮助主题,用F1键触发还不能连接到相关主题。主要是对chm中的HelpContextID的定义还没有弄明白,唉,没有时间去研究这个问题啊。谁有详细介绍就给我发一份啦。是chm,不是hlp的。
    [email protected]
      

  2.   

    先多谢A_SOSO(SOSO)。我会去试你的方法。很奇怪hhctrl.ocx不能当控件来用,但可以当成ACTIVEX DLL来引用,也可以当DLL API来用,呵呵。我在askpro.yeah.net中找‘帮助’关键字,发现用另一个API也可以,但仍有问题!!!
    这个方法是用ShellExcecute API。
    ShellExecute hwnd, "Open", chmfile, 0, 0, SW_SHOWMAXIMIZED
    如果chmfile是"c:\temp\1.htm"或"c:\temp\1.doc"就可以。
    但如果是"c:\temp\1.chm"只能看到硬盘在读取数据,但没有任何东西显示出来。
    这是怎么回事??????哪位知道??我可以再加20分。
      

  3.   

    to A_SOSO,那个写的那段中的'1.htm'是什么,我打开后,右边是找不到页面的。
    这个API在一些API手册里没有使用说明。另外我在askpro.yeah.net找到了一些。这 是 压 缩 存 储 的 HTML格 式 的 帮 助 文 件 , 微 软 计 划 使 用 这 种 格 式 替 代 .hlp格 式 。 如 果 想 制 作 这 种 文 件 可 以 访 问 http://www.microsoft.com/workshop/author/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 ' Display string resource ID or 
         ' text in a pop-up window. 
         Const HH_HELP_CONTEXT = &HF ' Display mapped numeric value in 
         ' dwData. 
         Const HH_TP_HELP_CONTEXTMENU = &H10 ' Text pop-up help, similar to 
         ' WinHelp's HELP_CONTEXTMENU. 
         Const HH_TP_HELP_WM_HELP = &H11 ' text pop-up help, similar to 
         ' WinHelp's 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 
        然 后 使 用 下 面 的 代 码 调 用 帮 助 : 
         ' HTML Help file launched in response to a button click: 
         Private Sub HH_DISPLAY_Click() 
         'hWnd is a Long defined elsewhere to be the window handle 
         'that will be the parent to the help window. 
         Dim hwndHelp As Long 
         'The return value is the window handle of the created help window. 
         hwndHelp = HtmlHelp(hWnd, "myfile.chm", HH_DISPLAY_TOPIC, 0) 
         End Sub 
         
         ' A specific topic identified by the variable ContextID is launched 
         ' in response to this button click: 
         Private Sub HH_HELP_Click() 
         Dim hwndHelp As Long 
         'The return value is the window handle of the created help window. 
         hwndHelp = HtmlHelp(hWnd, "myfile.chm", HH_HELP_CONTEXT, ContextID) 
         End Sub 
      

  4.   

    我认为都知道呢。
    chm的帮助是由htm或html做成的,1.htm当然是做成chm前的一个文件的名称,也就是对应的具体某个主题内容的一个页面。
      

  5.   

    我认为都知道呢。
    chm的帮助是由htm或html做成的,1.htm当然是做成chm前的一个文件的名称,也就是对应的具体某个主题内容的一个页面。 
    你组成帮助文件中没有1.htm文件,当然是找不到了。
      

  6.   

    ShellExcecute API是用来执行文件的。对可执行文件都可以调用。
      

  7.   

    到我的主页 http://263.csdn.net/edyang/ 下载 HTMLHELP 例子。
      

  8.   

    我一直是使用ShellExcecute来调用的,当然,没办法调到所指的子项,只能打开文件……
      

  9.   

    在Help或者是其他BUTTON的Click(单击事件)中加入如下代码(用以下的任意方法之一):
         方法1:sendkey={"F1"}要么是sendkeys=={"F1"}
         方法2:shell "HH.EXE 你的CHM文件路经文件名".例如:shell "hh.exe c:\myhelp.chm"
    要使用格式的帮助文件必须实在WIN98以上的系统中或者安装了微软的制作文件的软件在安装盘的目录下有该软件1.1版本(接对诗歌好东东).
      

  10.   

    在Help或者是其他BUTTON的Click(单击事件)中加入如下代码(用以下的任意方法之一):
        方法1:sendkey={"F1"}要么是sendkeys=={"F1"}
        方法2:shell "HH.EXE 你的CHM文件路经文件名".例如:shell "hh.exe c:\myhelp.chm"
    要使用格式的帮助文件必须实在WIN98以上的系统中或者安装了微软的制作该文件的软件在VB6安装盘的Helpfile目录下有该软件1.1版本(接对诗歌好东东).