4

VB.NETのボタンをクリックしたときに.CHMヘルプファイルを表示したい。誰かが私にこれを行う方法をコードで教えてもらえますか?

Private Sub cmdHelp_Click(ByVal sender As System.Objects, Byval e As System.EventArgs)Handles cmdHelp.Click
   'Please help provide some code
End Sub
4

4 に答える 4

9

.NET APIは、名前空間でHelpクラスを提供します。System.Windows.Formsいくつかの例:

Help.ShowHelp(ParentForm, "HelpFile.chm", HelpNavigator.TableofContents, Nothing)
Help.ShowHelp(ParentForm, "HelpFile.chm", HelpNavigator.Index, Nothing)
Help.ShowHelp(ParentForm, "HelpFile.chm", HelpNavigator.Topic, "Page.html")
Help.ShowHelp(ParentForm, "HelpFile.chm", HelpNavigator.TopicId, 123)
Help.ShowHelp(ParentForm, "HelpFile.chm", HelpNavigator.Keyword, "Keyword")
于 2011-07-17T23:00:01.803 に答える
5

プロセスを実行します。動詞から始めてopen、トリックを実行します。

Module Module1

    Sub Main()
        Dim p As New Process()
        Dim psi As New ProcessStartInfo("path to my CHM file")
        psi.Verb = "open"
        p.StartInfo = psi
        p.Start()

        Console.ReadKey()
    End Sub

End Module

WinXP SP3(SP2?)以降、ファイルはOSによって厳しく制限されていることに注意してください。.chmファイルは合理的なセキュリティリスクと見なされるため、ネットワークやリモートの場所から直接開くことはできません。それに応じてコーディングする必要があり、それらを開こうとすると例外が発生することが予想されます。

于 2011-07-12T08:57:58.983 に答える
1

ボタンクリックイベントでこのコードを書く

Dim RetVal
RetVal = Shell("hh.exe " & App.HelpFile, vbNormalFocus)

ここで、hh.exeは任意の名前です。App.Helpfileはchmファイル名です。

于 2013-02-21T10:41:24.477 に答える
0

HH.EXEを使用して、指定したトピックを表示することもできます。

サンプルコード[topicid]では、実際のトピックIDに置き換え[yourhelpfile.chm]、.chmファイルのフルパスと名前に置き換えます。

戻り値が必要な場合

Dim RetVal As Integer = Shell("HH.EXE -mapid [topicid] ms-its:[yourhelpfile.chm]", AppWinStyle.NormalFocus)

そうでなければこれだけ

Shell("HH.EXE -mapid [topicid] ms-its:[yourhelpfile.chm]", AppWinStyle.NormalFocus)
于 2019-10-04T05:34:02.307 に答える