如何从 chm 文件打开特定主题?
How to open specific topic from a chm file?
我已经从 chm 处理器软件创建了 chm 文件。通过单击特定主题的属性,我得到了 htm link
htm link : mk:@MSITStore:D:\my.chm::/start.htm#_Toc417986991
但是当我尝试从我的 C# 应用程序打开时出现错误
c#代码:
System.Windows.Forms.Help.ShowHelp(null, @"D:\my.chm", @"mk:@MSITStore:D:\my.chm::/start.htm#_Toc417986991");
当我运行我的代码并试图打开它时出现错误
"This program cannot display the webpage"
请帮我找到这个问题的解决方案
请在您的表单中添加一个 HelpProvider 并尝试类似以下代码的操作:
private const string sHTMLHelpFileName_ShowWithNavigationPane = "CHM-example_ShowWithNavigationPane.chm";
private void btnHelpTopic2_Click(object sender, EventArgs e)
{
helpProvider1.HelpNamespace = Application.StartupPath + @"\" + sHTMLHelpFileName_ShowWithNavigationPane;
Help.ShowHelp(this, helpProvider1.HelpNamespace, @"start.htm");
}
帮助 CHM 帮助文件已添加到项目的子文件夹中,例如\帮助。
对于下载,我提供了一个 C# VS2008 Project,包括上面的代码和具有不同帮助查看器的帮助文件 windows(不同的 CHM 文件仅用于展示案例)。
请将#_Toc417986991 视为由 CHM 处理器软件生成的内部书签。
我已经从 chm 处理器软件创建了 chm 文件。通过单击特定主题的属性,我得到了 htm link
htm link : mk:@MSITStore:D:\my.chm::/start.htm#_Toc417986991
但是当我尝试从我的 C# 应用程序打开时出现错误
c#代码:
System.Windows.Forms.Help.ShowHelp(null, @"D:\my.chm", @"mk:@MSITStore:D:\my.chm::/start.htm#_Toc417986991");
当我运行我的代码并试图打开它时出现错误
"This program cannot display the webpage"
请帮我找到这个问题的解决方案
请在您的表单中添加一个 HelpProvider 并尝试类似以下代码的操作:
private const string sHTMLHelpFileName_ShowWithNavigationPane = "CHM-example_ShowWithNavigationPane.chm";
private void btnHelpTopic2_Click(object sender, EventArgs e)
{
helpProvider1.HelpNamespace = Application.StartupPath + @"\" + sHTMLHelpFileName_ShowWithNavigationPane;
Help.ShowHelp(this, helpProvider1.HelpNamespace, @"start.htm");
}
帮助 CHM 帮助文件已添加到项目的子文件夹中,例如\帮助。 对于下载,我提供了一个 C# VS2008 Project,包括上面的代码和具有不同帮助查看器的帮助文件 windows(不同的 CHM 文件仅用于展示案例)。
请将#_Toc417986991 视为由 CHM 处理器软件生成的内部书签。