WinHelpを開く             <TOP>


少々古くさくなった仕様のWinHelpですが目次ページ、指定ページで開きます。Windows Vista ・ Windows 7 での表示は、このページ下部をご覧ください。

WinHelp WinHelpを使う

 

目次ページで開く
   
Api_WinHelp(hWnd&, HELPNAME$, HELP_FINDER, ByVal 0)
指定するページで開く(コンテキストID:32)
   
Api_WinHelp(hWnd&, HELPNAME$, HELP_CONTEXT, ByVal 32)
ヘルプを閉じる
   
Api_WinHelp(hWnd&, HELPNAME$, HELP_QUIT, ByVal 0)

目次ページ

指定ページ

ヘルプの使い方ヘルプを開く

ヘルプファイルはフリーソフトHelpDesignerを使用させていただいています。

Windows Vista では Winhlp32.exe は含まれておらず、.hlp ファイルは表示できませんでしたが、下記URLからダウンロードできます。
http://www.microsoft.com/downloads/details.aspx?displaylang=ja&FamilyID=6ebcfad9-d3f5-4365-8070-334cd175d4bb

http://support.microsoft.com/kb/917607

 

'================================================================
'= WinHelpを開く
'=    (WinHelp.bas)
'================================================================
#include "Windows.bi"

' ヘルプファイルを呼び出す
Declare Function Api_WinHelp& Lib "user32" Alias "WinHelpA" (ByVal hWnd&, ByVal lpHelpFile$, ByVal wCommand&, ByVal dwData&)

#define HELP_CONTEXT &H1          '特定ページ
#define HELP_QUIT &H2             'ファイルを閉じる
#define HELP_INDEX &H3            '目次ページ
#define HELP_HELPONHELP &H4       'ヘルプ使い方
#define HELP_SETINDEX &H5         'カレントインデックス
#define HELP_FINDER &HB           '目次ページ
#define HELP_KEY &H101            'キーワードに一致したヘルプを表示
#define HELP_PARTIALKEY &H105     '目次トピック呼出

Var Shared HelpName As String    'ヘルプファイルネーム

'================================================================
'=
'================================================================
Declare Sub MainForm_Start edecl ()
Sub MainForm_Start()
    HelpName = "AddPrtV62W.hlp"
End Sub

'================================================================
'= ヘルプの使い方ヘルプを開く(コンテキストID:0)
'================================================================
Declare Sub mnuReadMe_on edecl ()
Sub mnuReadMe_on()
    Var Ret As Long

    Ret = Api_WinHelp(GethWnd, "", HELP_HELPONHELP, ByVal 0)
End Sub

'================================================================
'= トピックの検索
'================================================================
Declare Sub mnuTopic_on edecl ()
Sub mnuTopic_on()
    Var Ret As Long

    Ret = Api_WinHelp(GethWnd, HelpName, HELP_FINDER, ByVal 0)
End Sub

'================================================================
'= 指定するページで開く(コンテキストID:32)
'================================================================
Declare Sub mnuShitei_on edecl ()
Sub mnuShitei_on()
    Var Ret As Long

    Ret = Api_WinHelp(GethWnd, HelpName, HELP_CONTEXT, ByVal 32)
End Sub

'================================================================
'= 終了(ヘルプを閉じる)
'================================================================
Declare Sub mnuExit_on edecl ()
Sub mnuExit_on()
    Var Ret As Long

    Ret = Api_WinHelp(GethWnd, HelpName, HELP_QUIT, ByVal 0)
    End
End Sub

'================================================================
'= 終了(ヘルプを閉じる)
'================================================================
Declare Sub MainForm_QueryClose edecl ()
Sub MainForm_QueryClose()
    Var Ret As Long

    Ret = Api_WinHelp(GethWnd, HelpName, HELP_QUIT, ByVal 0)
    End
End Sub

'================================================================
'=
'================================================================
While 1
    WaitEvent
Wend
Stop
End