В былые времена справка была не тривиальна, но возможна: создайте какой-нибудь забавный файл .rtf со специальными тегами, пропустите его через компилятор, и вы получите файл WinHelp (.hlp), который действительно хорошо работает.
Затем Microsoft решила, что WinHelp больше не является модным и крутым, и перешла на CHM, вплоть до того, что фактически удалила WinHelp из Vista.
Теперь CHM, может быть, и хорош, но каждый, кто пытался открыть .chm файл в сети, знает, что такое приятное "Переход на веб-страницу был отменен", вызванное ограничениями безопасности.
Хотя есть способы заставить CHM работать вне сети, это вряд ли хороший выбор, потому что, когда пользователь нажимает кнопку Help, он хочет получить помощь, а не выполнять какие-то странные настройки.
Итог: Я считаю CHM абсолютно непригодным для использования. Но поскольку WinHelp больше не является вариантом, мне интересно, какие есть альтернативы, особенно когда речь идет об интеграции с моим приложением (т.е. для WinHelp и CHM есть функции, позволяющие напрямую перейти к теме)?
Недостаток PDF в том, что для его создания требуется Adobe Reader (или один из более легких, которые мало кто использует). Я могу с этим смириться, так как это вроде как стандарт в настоящее время, но можете ли вы сказать ему, чтобы он надежно переходил к заданной странице/якорю?
HTML-файлы кажутся лучшим выбором, но тогда вам придется иметь дело с различными браузерами (CSS и прочее).
Edit: Я хочу создать свои собственные файлы справки. Поскольку я поклонник философии "No Setup, Just Extract and Run", я много раз сталкивался с этой проблемой в прошлом, потому что многие из моих пользователей запускают его по сети, что вызывает именно эту проблему.
Поэтому я ищу более надежный и перспективный способ предоставления помощи моим пользователям без необходимости писать отдельную систему помощи для каждого приложения, которое я создаю.
CHM - действительно хороший формат, но эта Security Stuff делает его непригодным для использования, поскольку справочная система должна предоставлять помощь пользователю, а не генерировать еще больше проблем.
HTML был бы следующим лучшим выбором, ТОЛЬКО ЕСЛИ вы будете обслуживать их с публичного веб-сервера. Если вы попытаетесь включить его в комплект вашего приложения, все файлы (и изображения (и таблицы стилей (и ...) ) ) заставят CHM выглядеть как дар богов.
Тем не менее, когда CHM-файлы действительно включены в установочный пакет (а не передаются по сети), я обнаружил, что они прекрасно работают.
Кроме того, у CHM-файлов есть еще один недостаток: Даже если вы попытаетесь открыть CHM-файл на локальном диске, вы можете натолкнуться на блок безопасности, если вы изначально скачали его откуда-то, потому что файл может быть помечен как "пришедший из внешнего источника", когда он был получен.
Я don' t как выбор HTML, и на самом деле перемещенный от простого HTML до ПРЕДСЕДАТЕЛЯ, сжимая и внося их в указатель. Даже используйте их на горстке клиентов не-Windows даже. Это просто решило постоянную небольшую поломку людей, помещающих его на сеть (гнездящаяся глубина ограниченные, странные эффекты захвата), антивирус, который умер в справочниках с 30 000 файлов HTML, и кесонное время 20 минут, устанавливая на более старой системе, зонах безопасности браузера и особенностях, просчетах необходимого пространства в инсталляторе и т.д.
И затем я don' t даже включают людей то начало " correcting" их, сторонний продукт с дефектным " integration" попытки и т.д., жалобы на slowliness (запуск браузера)
Все мы ждали годы проблем уйти как, Ose и аппаратные средства улучшились, но проблемы продолжали повторяться в количестве блеска вариантов и хватит. Мы нашли chmlib и решили, что могли навсегда использовать что-то на основе этого как спасение с простым внешним читателем, если бы OS, обеспеченный, прекратил работать и переключился.
Между тем у нас также есть собственный компилятор, таким образом, мы - MS, свободная соответствующий требованиям завтрашнего дня. Это doesn' t означают, что мы никогда не будем изменяться (решения с местными веб-серверами кажутся любимыми в наше время), но по крайней мере у нас есть выбор.
Наше программное обеспечение распространяется как локально среди клиентов, так и обслуживается с сетевого ресурса. Мы решили генерировать как CHM-файл, так и набор HTML-файлов для обслуживания по сети. Пользователи, запускающие программу локально, используют CHM-файл, а пользователи, получающие программу с сетевого ресурса, должны использовать HTML-файлы.
Мы используем Help and Manual и поэтому можем легко создавать оба типа вывода из одного исходного проекта. HTML-файлы также содержат возможности поиска и не требуют веб-сервера, поэтому, хотя это и не оптимальное решение, оно работает хорошо.
Пока что все однофайловые типы для Windows выглядят так или иначе сломанными:
Если Вы don' t хотят использовать инсталлятор и Вас don' t хотят, чтобы пользователь выполнил какие-либо дополнительные шаги, чтобы позволить файлы ПРЕДСЕДАТЕЛЯ по сети, почему бы не отступить к WinHelp? Vista не включает WinHlp32.exe из коробки, но это в свободном доступе как загрузка и для Vista и для Сервера 2008.
Это зависит от того, как импорт, который документация онлайн к Вашему продукту, хорошая инфраструктура документации, может быть сложным, чтобы установить, но когда-то сделанный это окупается. Вот то, как мы делаем это -
Из того, что Вы описываете, я посмотрел бы на Помощь Затмения, не простой объединяться в.NET или заявления MFC, Вы в основном должны сделать отображение помощи, чтобы решить, что запрос к URL тогда запускает URL, чтобы Затмить обертку Помощи или браузер.
[2]: http://na.justsystems.com/content.php? page=xmetal
Вопрос заключается в том, как генерировать собственные файлы справки или какой формат файла справки лучше?
Лично я считаю CHM превосходным. Одно из первых дел, которое я делаю при настройке машины, это скачиваю руководство по PHP в формате CHM (http://www.php.net/download-docs.php) и добавляю к нему горячую клавишу в Crimson Editor. Таким образом, когда я нажимаю F1, загружается CHM и выполняется поиск по слову, на котором находится курсор (отлично подходит для быстрого поиска функций).
Если Вы делаете " просто извлечение и run" Вы собираетесь бежать в вопросах безопасности. Это особенно верно, если Вы - пользователи, управляют Vista (или позже). есть ли причина, почему Вы не хотели упаковывать свои заявления в инсталляторе? Используя инсталлятор облегчил бы " внешний source" проблема. Вы были бы в состоянии использовать .chm файлы без любых проблем.
Мы используем InstallAware, чтобы создать наш устанавливать пакеты. It' s не дешевый, но очень хорошо. Если стоивший Ваше беспокойство, WIX открытый источник и довольно прочный. У WIX действительно есть кривая обучения, но it' s легкий работать с.
Я думаю решение we' ре, собирающееся заканчивать тем, что шло с для нашего заявления, принимает справочные файлы самостоятельно. Это предоставляет нам непосредственный доступ к файлам и способности усовершенствовать их.
У того, что я планирую, должно быть содержание, загруженное в огромную серию файлов XML, каждый содержащий помощь для определенного пункта. Этот XML содержал бы связи с другими файлами XML. Мы использовали бы XSLT, чтобы показать содержание по мере необходимости.
В зависимости от лицензирования мы можем построить определенный для клиента файл XSLT, чтобы скроить взгляд и чувство к тому, в чем они нуждаются. Мы, возможно, должны быть в состоянии только показать помощь для конкретных версий нашего продукта также и который может быть сделан, отфильтровав материал в XSLT.
у PDF есть недостаток требования Adobe Reader
Я использую Читателя Foxit на Windows дома и на работе. Намного меньший и очень быстрый, чтобы открыться. Очень удобный, когда Вы задаетесь вопросом, что точно a80000326.pdf и почему он забивает Вашу папку документов.
Я использую коммерческий пакет под названием AuthorIT, который может произвести много различных форматов, таких как председатель, HTML, PDF, слово, помощь окон, xml, xhtml, и некоторые другие, о которых я никогда не слышал (делает dita, звонят в звонок?). Это - система управления контентом, ориентированная к потребностям авторов технической документации. Преимущество состоит в том, что Вы можете использовать и снова использовать то же содержание, чтобы построить ряд руководств, и затем произвести их в различных форматах.
Так итог относительно вопроса выбирающего председателя или HTML или независимо от того, что то, что, если Вы используете это, Вы не заперты в данный формат, но Вы можете обеспечить несколько, среди которых может выбрать пользователь, и Вы можете даже добавить больше форматов, как Вы продвигаетесь без дополнительной платы.
Если у Вас просто есть одно руководство, чтобы создать его won' t стоить Вашего, в то время как, но если Вам установили документацию управлять тогда им, является лучшим к моему знанию. Их поддержка очень полезна также.