Как преобразовать файлы HLP в файлы CHM

Мне нужна помощь, у меня есть файлы .hlp, и я хочу преобразовать их в файлы .chm, так как файлы .hlp не работают в Windows 10.

Как я могу это сделать?


person Cristhopher Mancilla    schedule 25.04.2017    source источник
comment
superuser.com/questions/32452/   -  person Hans Passant    schedule 26.04.2017
comment
См. komeil.com/blog/ ... следуйте этой процедуре, и вы сможете открывать файлы .HLP непосредственно в Windows 10 (или более ранней версии, в соответствии с другими инструкциями на этой странице).   -  person Jim Balter    schedule 15.06.2018


Ответы (4)


Я вижу два или более решений в зависимости от ваших требований:

  • Преобразование WinHelp (HLP) в HTMLHelp (CHM) или PDF
  • Запуск файлов WinHelp в Windows10

Преобразование WinHelp (HLP) в HTMLHelp (CHM):

Учебное пособие на моем сайте дает пошаговое описание того, как преобразовать WinHelp (HLP) в HTMLHelp (CHM) на бесплатном / условно-бесплатном и «малобюджетном» уровне. Пример проекта преобразования из раздела загрузки включает в себя рабочую структуру и файлы примеров.

Конечно, вы можете использовать инструмент для создания справки (HAT), например Help+Manual, HelpScribble или любой другой HAT для преобразования существующих проектов WinHelp в HTMLHelp.

Запустите WinHelp в Windows 10:

Формат WinHelp (.hlp) существует с самого начала 1990-х годов и заменен HTML Help 1.x (.chm). Microsoft настоятельно рекомендует отказаться от WinHelp около десяти лет назад. Но для тестового приложения он работает на моей машине с Windows 10 как шарм.

введите описание изображения здесь

Но некоторые тяжелые шаги по исправлению ушедшего WinHelp Viewer. Обратите внимание, что здесь я не говорю о средстве просмотра HTMLHelp для файлов справки *.chm.

Выполнение шагов решения зависит от вашей версии Windows 10 (32-разрядная или 64-разрядная). Чтобы узнать тип вашей системы (32-разрядная или 64-разрядная), нажмите и удерживайте Windows+R. Введите msinfo32 в появившемся диалоговом окне «Выполнить» и нажмите Enter.

Вы знаете, что попытка открыть файл справки (*.hlp) приводит к появлению страницы поддержки Microsoft.Ошибка при открытии справки в программах для Windows: "Функция не включена" или "Справка не поддерживается".

Вы найдете ссылку для загрузки для Windows 8.1, но для Windows 10 вам нужно установить ее особым образом (Windows8.1-KB917607-x64.msu).

  1. Запустите командную строку от имени администратора (ВНИМАНИЕ — примеры для немецкого языка здесь)!
  2. Извлеките загруженный файл .msu во временный каталог.

    md msu-extracted

    expand Windows8.1-KB917607-x64.msu /f:* .\msu-extracted

  3. Извлеките содержащийся CAB-файл с 279 файлами.

    cd msu-extracted

    md cab-extracted

    expand Windows8.1-KB917607-x64.cab /f:* .\cab-extracted

  4. В зависимости от ваших языковых настроек найдите соответствующий MUI-файл, например. используйте "cs-", "de-" или "en-". Людям, использующим вариант x86, необходимо запустить «dir x86*de-*».

    cd cab-extracted

  5. Перейдите по указанному пути для вашего языка "... de-de ...", например:

    cd amd64_microsoft-windows-winhstb.resources_31bf3856ad364e35_6.3.9600.20470_de-de_1ab8cd412c1028d0
    
  6. Здесь мы найдем «winhlp32.exe.mui». Теперь нам нужно заменить, например. %SystemRoot%\de-de\winhlp32.exe.mui с нашим новым файлом:

    takeown /f "%SystemRoot%\de-de\winhlp32.exe.mui"
    icacls "%SystemRoot%\de-de\winhlp32.exe.mui" /grant "%UserName%":f
    ren %SystemRoot%\de-de\winhlp32.exe.mui winhlp32.exe.mui.w10
    copy winhlp32.exe.mui %SystemRoot%\de-de\winhlp32.exe.mui 
    takeown /f "%SystemRoot%\winhlp32.exe"
    icacls "%SystemRoot%\winhlp32.exe" /grant "%UserName%":f
    ren %SystemRoot%\winhlp32.exe winhlp32.exe.w10
    cd ..
    dir *.exe /s
    
  7. Найдите правильный путь, начинающийся с amd64 или x86, и перейдите к нему:

    cd "amd64_microsoft-windows-winhstb_31bf3856ad364e35_6.3.9600.20470_none_1a54d9f2f676f6c2"
    copy winhlp32.exe %SystemRoot%\winhlp32.exe 
    

Изменить:

Вам не нужно заменять _none_ в последнем командном шаге cd (все отдельные шаги протестированы 1 сентября 2017 г. и 24 августа 2018 г. и работают в Windows 10).

Существует сброс обходного пути, описанного выше, после основного обновления Microsoft Windows.

Изменить: (скопированные комментарии формы, спасибо @dxiv)

Альтернативой последним двум шагам является полное копирование файлов winHlp32 в другое место, например C:\etc[\de-de], а затем повторное связывание ftype hlpfile=C:\etc\winHlp32 %1 в командной строке с повышенными привилегиями. Это позволяет избежать конфликтов с sfc и будущими обновлениями Windows, а HLP по-прежнему будут работать при открытии по ассоциации (двойной щелчок в проводнике или запуск old.hlp в командной строке cmd).

person help-info.de    schedule 26.04.2017
comment
большое спасибо, но я просто ищу программное обеспечение, которое преобразует мой файл HLP в файл CHM, у меня нет разрешений на управление командной строкой в ​​моей компании, поэтому я просто хочу преобразовать свой файл hlp в chm, ничего больше . Если вы знаете о программном обеспечении или компании, которая решает это решение. - person Cristhopher Mancilla; 27.04.2017
comment
@Cristhopher Mancilla Gonzalez: Обратите внимание: при запросе инструментов используйте рекомендации по программному обеспечению. - person help-info.de; 27.04.2017
comment
Я ценю ваш ответ, очень полезно, я постараюсь проверить ваши инструменты. - person Cristhopher Mancilla; 27.04.2017
comment
Как это соотносится с RoboHelp? Этот вывод лучше? Я попробовал RoboHelp, но результат невелик. - person zar; 01.08.2018
comment
@zar: обратите внимание, что Microsoft WinHelp (*.HLP) — это очень старый формат справки. Выше я разместил несколько ссылок для преобразования в другой формат справки *.CHM. Вторая часть моего ответа предназначена только для тех пользователей Windows10, которым все еще нужно отображать старый формат WinHelp. Так что не вкладывайте больше времени и денег в WinHelp. Воспользуйтесь веб-справкой или HTMLHelp (CHM) прямо сейчас. - person help-info.de; 02.08.2018
comment
@help-info.de Поздний +1, добавил бы только, что альтернативой последним нескольким шагам является полное копирование файлов winHlp32 в другое место, например C:\etc[\de-de], а затем повторное связывание ftype hlpfile=C:\etc\winHlp32 %1 в командной строке с повышенными привилегиями. Это позволяет избежать конфликтов с sfc и будущими обновлениями Windows, а HLP по-прежнему будут работать при открытии по ассоциации (двойной щелчок в проводнике или start old.hlp в командной строке cmd). - person dxiv; 28.04.2019
comment
Шаги 6 и 7 необходимы, когда файл справки открывается встроенной справкой программного обеспечения. - person Florent; 12.12.2020
comment
Итак, я извлек winhlp32.exe из папки amd64_microsoft-windows-winhstb_31bf3856ad364e35_6.3.9600.20470_none_1a54d9f2f676f6c2 в архиве Windows8.1-KB917607-x64.msu и в соответствии с инструкциями @dxiv попытался выполнить его из выделенного каталога, однако я получаю (9009) только при открытии .exe или двойном щелчке по файлу .hlp на моем x64. Машина с виндовс 10. Никаких замен системных файлов не делал. - person sp00n; 27.03.2021
comment
@ sp00n Файла .exe недостаточно, вам нужны и другие файлы .dll и .mui из пакета. Это согласуется с ошибкой 9009, которую вы видите, что означает, что файл не найден. - person dxiv; 28.03.2021
comment
@dxiv Файлы .mui и .dll находятся в том же каталоге, что и winhlp32.exe, но, как уже упоминалось, я не делал никаких замен системных файлов. Я надеялся, что этого будет достаточно для выполнения программы. - person sp00n; 29.03.2021
comment
@ sp00n Файлы .mui помещаются в подкаталог, названный в честь локали, например. en-us в моем случае. Этого достаточно для запуска exe, проверено под Win7 и Win10. Чтобы открывать файлы справки по ассоциации, вам также необходимо связать .hlp файлов с этим экземпляром winHlp32. - person dxiv; 29.03.2021
comment
@dxiv Да, это была недостающая часть головоломки: поместить файлы .mui в подпапку с локалью! - person sp00n; 29.03.2021

Народ, после долгих поисков я пришел к следующему выводу: файлы .HLP не могут запускаться в Windows 8 и 10, только в Windows 7 и ниже. Файлы .CHM могут выполняться в Windows 8 и Windows 10. Итак, мне пришлось создать новый файл .chm в Help Development Studio в Windows 10 для его выполнения. Мои старые файлы .HLP устарели. Это заняло так много времени, но я так много узнал об этом типе файлов. Наконец, спасибо за ваш вклад в мой вопрос.

person Cristhopher Mancilla    schedule 10.09.2019
comment
Более двух лет назад я уже рекомендовал преобразовать WinHelp (HLP) в HTMLHelp (CHM), и Microsoft настоятельно рекомендует вам отказаться от WinHelp около десяти лет назад. А для особых тестовых случаев были дополнительные подсказки по использованию под Windows10. Поэтому я не понимаю, почему ваш комментарий является ответом сейчас. Я думаю, что это действительно комментарий. - person help-info.de; 10.09.2019
comment
Это был единственный способ решить проблему. У меня нет разрешения на редактирование этих файлов с помощью командной строки, моя компания этого не разрешает. Итак, я сделал это решение этой конкретной проблемы. - person Cristhopher Mancilla; 13.09.2019

Вы можете конвертировать HLP в HTML с помощью расширения Chrome: ‹‹ CHM, HLP Viewer и Extractor ›› Предложено: https://ehubsoft.herokuapp.com/chmviewer

person philoroussel    schedule 22.08.2020

Вы герой, сэр! В итоге я использовал HelpScribble и использовал связанный с ним декомпилятор здесь.

Цитирую их сайт:

Если у вас есть существующий файл WinHelp без исходных файлов HPJ и RTF, вы можете загрузить декомпилятор WinHelp для воссоздания источников HPJ и RTF из файла HLP. Извлеките файлы внутри helpdc21.zip в новую папку. Затем вы можете легко декомпилировать любой файл .hlp из командной строки, введя: helpdeco helpfile.hlp где helpfile.hlp — это файл справки, который вы хотите декомпилировать. Декомпилятор сгенерирует файлы HPJ и RTF, а также серию растровых файлов, если файл справки содержит изображения. Используйте Project|Import Help Project в HelpScribble, чтобы импортировать файл справки.

Это позволит извлечь исходные файлы для файла hlp.

Наконец, просто импортируйте получившийся файл hpj в HelpScribble. Оттуда вы можете просто экспортировать в html-файл с помощью параметра Создать плоский вручную.

Бум. Сделанный.

person Daniel Cárdenas    schedule 14.11.2020
comment
О каком герое вы говорите? Это был комментарий к сообщению другого пользователя? - person SherylHohman; 14.11.2020