Файлы справки Windows - какие есть варианты? - PullRequest
35 голосов
/ 04 августа 2008

В прежние времена, справка была не тривиальной, но возможной: сгенерируйте какой-нибудь забавный файл .rtf со специальными тегами, запустите его через компилятор, и вы получите файл WinHelp (.hlp), который на самом деле работает очень хорошо.

Затем Microsoft решила, что WinHelp уже не хип и не крут, и переключилась на CHM, вплоть до того момента, когда они фактически отказались от WinHelp из Vista.

Теперь, возможно, CHM хорош, но каждый, кто пытался открыть файл .chm в сети, будет знать приятный экран «Переход на веб-страницу был отменен», вызванный ограничениями безопасности.

Хотя есть способы заставить CHM работать вне сети, это вряд ли удачный выбор, потому что, когда пользователь нажимает кнопку «Справка», ему нужна помощь, и ему не нужно делать какие-то прикольные настройки.

Итог: я считаю CHM абсолютно непригодным для использования. Но так как WinHelp больше не является опцией, мне интересно, какие есть альтернативы, особенно когда дело доходит до интеграции с моим приложением (т. Е. Для WinHelp и CHM есть функции, позволяющие напрямую перейти к теме)?

Недостатком PDF является необходимость использования Adobe Reader (или одного из более легких, которые используют не так много людей). Я мог бы жить с этим видением, так как это является своего рода стандартом в наше время, но можете ли вы с уверенностью сказать ему, чтобы перейти на данную страницу / якорь?

HTML-файлы кажутся лучшим выбором, тогда вам просто нужно иметь дело с различными браузерами (CSS и прочее).

Редактировать: Я хочу создать свои собственные файлы справки. Поскольку я являюсь поклонником философии «Нет установки, просто извлеки и запускай», в прошлом у меня была эта проблема много раз, потому что многие из моих пользователей запускали ее из сети, что и вызывает именно эту проблему.

Поэтому я ищу более надежный и ориентированный на будущее способ оказания помощи моим пользователям без необходимости кодировать разные справочные системы для каждого приложения, которое я создаю.

CHM - действительно хороший формат, но Security Stuff делает его непригодным для использования, поскольку предполагается, что справочная система должна предоставлять помощь пользователю, а не создавать еще больше проблем.

Ответы [ 10 ]

14 голосов
/ 04 августа 2008

HTML будет следующим лучшим выбором, ТОЛЬКО ЕСЛИ вы будете обслуживать их с общедоступного веб-сервера. Если вы попытаетесь связать его с вашим приложением, все файлы (и изображения (и таблицы стилей (и ...))) сделают CHM похожим на подарок от богов.

Тем не менее, когда я действительно упакован в установочный пакет (вместо того, чтобы обслуживаться по сети), я обнаружил, что файлы CHM работают хорошо.

OTOH, еще один подводный камень о файлах CHM: даже если вы попытаетесь открыть файл CHM на локальном диске, вы можете столкнуться с блоком безопасности, если изначально загрузили его откуда-то, потому что файл быть помеченным как «пришедший из внешнего источника», когда он был получен.

5 голосов
/ 06 сентября 2009

Мне не нравится опция html, и я фактически перешел из простого HTML в CHM, сжимая и индексируя их. Даже использовать их на кучу не-Windows клиентов даже. Он просто решал постоянную небольшую поломку людей, помещающих его в сеть (ограниченная глубина вложения, странные эффекты блокировки), антивирус, который умер в каталогах с 30000 html-файлами, и 20 минут времени декомпрессии при установке в старой системе, зонах безопасности браузера и особенности, просчеты необходимого пространства в установщике и т. д.

А потом я даже не включаю людей, которые начинают «исправлять» их, сторонний продукт с ошибочными попытками «интеграции» и т. Д., Жалобы на медлительность (запуск браузера)

Мы все годами ждали, когда проблемы исчезнут, поскольку операционные системы и оборудование улучшились, но проблемы продолжали повторяться в ошеломляющем количестве разновидностей, и этого было достаточно. Мы нашли chmlib и решили, что всегда можем использовать что-то, основанное на этом, как escape с простым внешним считывателем, если предоставленные ОС перестали работать и переключаться.

Между тем, у нас также есть собственный компилятор, поэтому мы не подвержены риску использования MS. Это не значит, что мы никогда не изменимся (решения с локальными веб-серверами сейчас кажутся любимыми), но, по крайней мере, у нас есть выбор.

3 голосов
/ 21 сентября 2008

Зависит от того, как импорт онлайн документации к вашему продукту, может быть сложно создать хорошую инфраструктуру документации, но когда это будет сделано, это окупится. Вот как мы это делаем -

  • Источник справки DITA скомпилированный XML, хранящийся в SCC (ClearCase).
  • Помощь по редактированию XMetal
  • Компиляция справки, настроенная Открыть набор инструментов DITA , с пользовательской предварительной обработкой Perl / Java
  • Источник справки содержит перекрестные ссылки на ресурсы приложений во время компиляции, файлы .RC и т. Д.
  • Справочные материалы из одного источника, PDF, CHM, Справка Eclipse , HTML.
  • Репозиторий с одним источником предоставляет помощь для нескольких продуктов 10+ с тысячами общих тем.

Из того, что вы описываете, я смотрю на справку Eclipse, ее не просто интегрировать в приложения .NET или MFC, вам, в основном, нужно выполнить сопоставление справки, чтобы разрешить запрос к URL, а затем запустить URL-адрес для оболочки Eclipse Help или браузер.

3 голосов
/ 04 августа 2008

Если вы не хотите использовать установщик и не хотите, чтобы пользователь выполнял какие-либо дополнительные действия, чтобы разрешить CHM-файлы по сети, почему бы не использовать WinHelp? Vista не включает в себя WinHlp32.exe из коробки, но она свободно доступна для загрузки как для Vista, так и для Server 2008.

3 голосов
/ 04 августа 2008

Наше программное обеспечение распространяется как локально для клиентов, так и через сетевой ресурс. Мы выбрали генерацию как файла CHM, так и набора файлов HTML для обслуживания из сети. Пользователи, запускающие программу локально, используют файл CHM, а пользователи, получающие свою программу через общий сетевой ресурс, должны использовать файлы HTML.

Мы используем Справка и руководство и, таким образом, можем легко создавать оба типа выходных данных из одного исходного проекта. Файлы HTML также содержат возможности поиска и не требуют веб-сервера, поэтому, хотя это и не оптимальное решение, работает нормально.

Пока что все типы отдельных файлов для Windows так или иначе не работают:

  • WinHelp - устарел
  • HtmlHelp (CHM) - устарел в Vista, не работает с общего сетевого ресурса, кроме этого работает очень хорошо
  • Справка Microsoft 2 (HXS) - кажется, что это работает вплоть до того момента, когда это не так, поврежденные индексы и т. П., Это используется Visual Studio 2005 и выше, в качестве примера
3 голосов
/ 04 августа 2008

Вопрос в том, как сгенерировать свои собственные файлы справки или какой формат справки лучше всего подходит?

Лично я считаю CHM превосходным. Одна из первых вещей, которые я делаю при настройке машины, это загрузить Руководство по PHP в формате CHM (http://www.php.net/download-docs.php) и добавить к нему горячую клавишу в Crimson Editor . Поэтому, когда я нажимаю F1, загружает CHM и выполняет поиск слова, на котором находится мой курсор (отлично подходит для быстрого ознакомления с функциями).

2 голосов
/ 27 ноября 2008

Я думаю, что решение, которое мы собираемся использовать для нашего приложения, - это размещение файлов справки самостоятельно. Это дает нам немедленный доступ к файлам и возможность их обновления.

Я планирую загрузить контент в огромную серию XML-файлов, каждый из которых содержит справку для определенного элемента. Этот XML будет содержать ссылки на другие файлы XML. Мы будем использовать XSLT для отображения содержимого по мере необходимости.

В зависимости от лицензирования, мы можем создать клиентский XSLT-файл, чтобы адаптировать внешний вид к тому, что им нужно. Возможно, нам потребуется показать справку только для определенных версий нашего продукта, и это можно сделать, отфильтровав содержимое в XSLT.

2 голосов
/ 05 августа 2008

Недостатком PDF является необходимость в Adobe Reader

Я использую Foxit Reader на Windows дома и на работе. Гораздо меньше и очень быстро открывается. Очень удобно, когда вам интересно, что такое a80000326.pdf и почему он забивает вашу папку документов.

2 голосов
/ 04 августа 2008

Если вы делаете «просто распаковать и запустить», вы столкнетесь с проблемами безопасности. Это особенно актуально, если вы используете Vista (или более позднюю версию). Есть ли причина, по которой вы хотите избежать упаковки ваших приложений внутри установщика? Использование установщика уменьшит проблему с «внешним источником». Вы сможете без проблем использовать файлы .chm.

Мы используем InstallAware для создания наших пакетов установки. Это не дешево, но очень хорошо. Если вас беспокоит цена, WIX с открытым исходным кодом и довольно надежный. WIX имеет кривую обучения, но с ней легко работать.

1 голос
/ 18 сентября 2008

Я использую коммерческий пакет AuthorIT, который может генерировать различные форматы, такие как chm, html, pdf, word, windows help, xml, xhtml и некоторые другие, о которых я никогда не слышал (dita звонит в колокол ?). Это система управления контентом, ориентированная на потребности разработчиков технической документации. Преимущество состоит в том, что вы можете использовать и повторно использовать один и тот же контент для создания набора руководств, а затем создавать их в разных форматах.

Таким образом, суть вопроса относительно выбора chm или html или чего-то другого заключается в том, что если вы используете это, вы не привязаны к заданному формату, но вы можете предоставить несколько, среди которых пользователь может выбирать, и вы можете даже добавляйте больше форматов по мере необходимости, без дополнительной оплаты.

Если у вас есть только одно руководство по его созданию, оно не будет стоить вашего времени, но если у вас есть набор документации для управления, то это лучшее, насколько мне известно. Их поддержка также очень полезна.

...