Форум: "Потрепаться";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2003.08.14;
Скачать: [xml.tar.bz2];




Вниз

Как создать CHM файл 


Феликс Мантилья   (2003-07-28 18:41) [0]

Друзья!
Как из своей Delphi-программы создавать chm файлы?
(наподобие утилитки html2chm)

Может компоненты есть готовые?

Или линки на теорию вопроса?



Феликс Мантилья   (2003-07-28 21:06) [1]

Никто не знает что ли?



y-soft   (2003-07-28 21:33) [2]

Ничего трудного тут нет.

Сначала динамически во временном каталоге создается весь HTML контент, потом так же формируется файл проекта *.hhp и необходимые файлы *.h, а затем программно запускается компилятор hhc.exe с необходимыми параметрами командной строки.

Необходимо, что бы в путях был доступен также HHA.dll

Получается прекрасно.

Делается так, а не напрямую, потому что внутренняя структура .chm не документирована, а доступных неофициальных достоверных полных расшифровок не существует.

Указанные файлы hhc.exe и hha.dll входят в свободно распространяемый M$ пакет для компиляции файлов *.chm (HtmlHelp.exe)



Beginner3000   (2003-07-28 23:35) [3]

Замечательно
верю
Но только почему html2chm без этих файлов устанавливается?
наверное парень в ms работает (инсайдер)



Феликс Мантилья   (2003-07-28 23:48) [4]

Устанавливаться-то она может и устанавливается, а вот работает ли она без этих файлов - вот в чем, собственно гря, вопрос.



Beginner3000   (2003-07-28 23:52) [5]

У меня работает



RIMMER   (2003-07-28 23:57) [6]

в html2chm есть chm.dll. Запроси у автора заголовки, может откликнется.



Феликс Мантилья   (2003-07-29 00:08) [7]


> RIMMER © (28.07.03 23:57)


А чье авторство на chm.dll?



y-soft   (2003-07-29 07:27) [8]

Честно говоря кое-что про внутренний формат все же известно - это компаундный файл, в секциях которого и хранится HTML контент, который обычно сжат CAB (но может быть и не сжат), а также оглавление, настройки окна, точки вызова контекстной помощи и т.д.

Добровольцы накопали довольно много:

http://www.speakeasy.org/~russotto/chm/chmformat.html
http://savannah.nongnu.org/projects/chmspec

Но IMHO использовать официальный компилятор hha.dll проще и надежнее, что, кстати, абсолютное большинство утилит и делает...



y-soft   (2003-07-29 07:58) [9]

Вот еще (специально для желающих изобретать усовершенствованные велосипеды)- OpenSource проекты по созданию альтернативных средств работы с CHM:

http://bonedaddy.net/pabs3/hhm/index.html
http://66.93.236.84/~jedwin/projects/chmlib/




[NIKEL]   (2003-07-29 10:10) [10]

chm это тот же compound файл

и создавать его можно также через интерфейс IStorage
просто надо создавать несколько специальных потоков в корне (описание окон, дерева, меню, поиска и т.д)
сжимается он недокументированным методом Compact




Форум: "Потрепаться";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2003.08.14;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.73 MB
Время: 0.054 c
14-45073          Sheng                 2003-07-27 00:39  2003.08.14  
Про совместимость dfm-файлов


14-45099          sucer                 2003-06-12 17:25  2003.08.14  
HOOK problem s.Помогите !!!


14-45132          Alibaba               2003-07-30 18:55  2003.08.14  
Мастера DELPHI


14-44969          VladP                 2003-07-30 08:27  2003.08.14  
Посоветуйте цифровой фотоаппарат за 350$


14-45027          Бархатный             2003-07-28 11:26  2003.08.14  
PChar