从.Net应用程序打开Windows 7帮助(helpPane.exe)

我试图打开Windows 7帮助从.Net表单应用程序到特定的书签,例如打印机安装。

我尝试在打开控制面板小程序的同一个打开它(在下面的示例中返回和恢复)。

ProcessStartInfo startInfo = new ProcessStartInfo(@"c:\windows\system32\control.exe", "/name Microsoft.BackupAndRestore"); startInfo.UseShellExecute = true; Process.Start(startInfo); 

但它不起作用。 我没有成功打开.exe。 有谁知道如何做到这一点?

IIRC HelpPane.exe适用于.h1s文件,所以如果你有这样一个文件的完整路径,你可以使用例如Process.Start (@"C:\myDir\myhelpfile.h1s"); 打开它。

根据MS的另一个选择(很可能是重新开始的)是托管HelpPane(基本上是一个COM对象!) – 有关详细信息,请参阅http://msdn.microsoft.com/en-us/library/ms728715%28v= VS.85%29.aspx

其他重要的MSDN链接是:

从以上链接:

帮助窗格API只能用于显示Windows帮助内容集。 它可以由OEM,系统构建商和企业客户根据许可协议进行定制,但不能由第三方程序使用。 不支持显示不属于Windows帮助内容集的内容。

根据您想要实现的目标,您可能需要先与MS签署许可协议…

编辑 – 根据评论:

要显示特定主题,您需要使用该主题的URL调用COM对象的DisplayTask方法。

编辑2 – 根据评论最终解决方案:

在项目中添加对C:\Windows\System32\HelpPaneProxy.dll的引用,然后可以像这样使用HelpPane

 HxHelpPane pHelpPane = new HxHelpPane(); pHelpPane.DisplayTask("mshelp://windows/?id=e725b43f-94e4-4410-98e7-cc87ab2739aa");