Здесь я пытаюсь запустить .chm-файл, когда справка запрашивается либо с использованием клавиши F1, используя Form1_HelpRequested(object sender, HelpEventArgs hlpevent)
Почему Help.ShowHelp(chmFileName);
не работает в моно на linux? Где это работает хорошо на визуальной студии, окнах. Пожалуйста, помогите мне выполнить помощь по моно.Зачем нужна Help.ShowHelp (chmFileName); не работает в моно на linux?
ответ
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
этот код работает, но когда он открывается, он показывает о Chmsee – UserCSharp
. Я знаю, что это старый, но в случае, если у кого-то другая проблема, так как @UserCSharp указал, что аргументы в принятом ответе не работают. Я использую xchm вместо chmsee, когда вам нужно «-c topicId help.chm», где topicId - это int (как определено в файле Map.h). –
Возможно, соответствующие вызовы API не реализованы в Linux.
https://github.com/mono/mono/blob/master/mcs/class/Managed.Windows.Forms/System.Windows.Forms/Help.cs Функция отмечена как [MonoTODO]. –
CHM - это формат файла только для Windows. Для него нет поддержки на других операционных системах, и поэтому ребята Mono не пытаются его поддерживать. –