2013-05-15 24 views
1

这里我试图运行.chm文件,当请求帮助时使用F1键使用Form1_HelpRequested(object sender, HelpEventArgs hlpevent)为什么Help.ShowHelp(chmFileName);不能在单声道Linux上工作?因为它在视觉工作室,windows上运行良好。请帮助我在单声道上执行帮助。为什么Help.ShowHelp(chmFileName);不在单声道Linux上工作?

+0

CHM是Windows的唯一文件格式。在其他操作系统上没有原生支持,这就是为什么单声道家伙不会试图支持它。 –

回答

0
private void ShowHelpForLinux() 
{ 
System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo(); 
startInfo.FileName = "chmsee"; 
startInfo.Arguments = " " + help.chm + "::" + @"rootname//destination.htm"; 
Process.Start(startInfo); 
} 

对于mono c#帮助,此代码将起作用。

作者Samdoss

+0

此代码正在工作,但是,当文件打开时显示有关Chmsee – UserCSharp

+0

我知道这是旧的,但如果其他人有相同的问题,因为@UserCSharp指出接受的答案中的参数不起作用。我用xchm代替chmsee,当你需要的是“-c topicId help.chm”,其中topicId是一个int(如你的Map.h文件中定义的那样)。 –

2

也许相关的API调用没有在Linux上实现。

+1

https://github.com/mono/mono/blob/master/mcs/class/Managed.Windows.Forms/System.Windows.Forms/Help.cs该功能被标记为[MonoTODO]。 –