记事本+hhc生成CHM


       
        CHM帮助文件,用HTML Help Workshop的hcw.exe来做,极不方便。但抛开GUI界面,手动编辑它的三种文件(.hhp+.htm+.hhc),倒而方便和容易操作。

在这里,我们把CHM帮助文件理解为一个"移动硬盘",里面的路径问题部好解决。
<------------------------.hhp--------------------->
hhp //
最好用绝对路径,相对于hhp文件的路径 也可以)
[OPTIONS]
Binary TOC=Yes
Compatibility=1.1 or later
Compiled file=tulater.chm
Contents file=D:\chm\aTips.hhc
Default Window=dfw
Default topic=main1.htm
Display compile progress=No
Error log file=Errlog.txt
Full-text search=Yes
Language=0x804 中文(中国)
Title=tulater技巧收集
[WINDOWS]
dfw="tulater","D:\chm\aTips.hhc",,"main1.htm","main1.htm",,,,,0x63520,400,0x304e,,,,,,,,0
[FILES]
main1.htm
zz2z.JPG
D:\html\1.htm

//这里加入要加进CHM里的文件
//加入CHM后,放到"移动硬盘"的根目录里,原来的路径信息没有保留。
//不仅可以把网页,图片加入CHM,任意文件也能(Flash,声音文件等等)都能加入其中.
//网页里最好不要有png的图片,否则无没显示
[MERGE FILES]
万一_Delphi.chm
VCL组件的属性和方法详解.chm
   tulater 
<-----------------------.htm--------------------->
htm//
注意网页里的超链接,只能用相对于htm文件的路径
/zz2z.JPG 是指hhp文件的路径,也即是根目录()相对于hhc创建的虚拟目录
<-----------------------.hhc---begin----------------->
.hhc文件是形成树形的参数。
// 用相对于 .hhc的 路径
< UL >
</ UL >
一对UL形成内陷一层。
          
< LI >< OBJECT  type ="text/sitemap" >     
                  
< param  name ="Name"  value ="10" >
                  
< param  name ="Local"  value ="0/1/2.htm" >                        
          
</ OBJECT >
一个
< LI > 生成一个结点:例子如下

<-----------------------.hhc---begin----------------->
< HTML >
< HEAD >
< meta  name ="GENERATOR"  content ="Microsoft&reg; HTML Help Workshop 4.1" >
<!--  Sitemap 1.0  -->
</ HEAD >< BODY >
< OBJECT  type ="text/site properties" >
    
< param  name ="ImageType"  value ="Folder" >
</ OBJECT >
<!-- 树形begin  -->
       < UL > <!-- 第一层begin  -->
       
< LI >< OBJECT  type ="text/sitemap" >     
           
 < param  name ="Name"  value ="00" >   <!-- 结点名称  -->         
           
 </ OBJECT >
       
< LI >< OBJECT  type ="text/sitemap" >     
             
< param  name ="Name"  value ="01" >
             
< param  name ="Local"  value ="0/1/2.htm" >   <!-- 结点链向的文件,是指向hhp[files]的文件 -->   
                <!-- ,有这个参数,图标是一篇文档的图样,没有"Local"参数,就是一个文件夹的图标 -->                       
       
      </ OBJECT >
       
< LI > < OBJECT  type ="text/sitemap" >     
             
< param  name ="Name"  value ="02" >                            
       
      </ OBJECT >
       
                     < UL > <!-- 第二层begin -->
 
                            < LI >< OBJECT  type ="text/sitemap" >     
 
                                       < param  name ="Name"  value ="10" >
 
                                       < param  name ="Local"  value ="0/1/2.htm" >                        
  
                                       </ OBJECT >
                                 < LI >< OBJECT  type ="text/sitemap" >     
 
                                       < param  name ="Name"  value ="11" >                       
 
                                       </ OBJECT >
                                                                < UL > <!-- 第三层begin  -->
      
                                                          < LI >< OBJECT  type ="text/sitemap" >     
     
                                                                < param  name ="Name"  value ="2" >     
   
                                                                   < param  name ="Local"  value ="0/1/2.htm" >      
 
                                                                     </ OBJECT >
                                                         
</ UL > <!-- 第三层end  -->
      
                     </ UL > <!-- 第二层end  -->
        </ UL > <!-- 第一层end  -->
<!-- 树形end  -->     
</ BODY ></ HTML >
<-----------------------.hhc-end-------------------->
如果全文搜索无效(
1)网页字符集为gb2312,
2)对文本文件无效,
3)没勾选只搜索标题,
4)没有注册
itircl.dll
5)不要在要搜索内容前加HTML特殊符号,空格除外
)外,弹出
"HHC6003: The file itircl.dll has not been registered correctly",错误
Look for itcc.dll on your system. If it's there, register it using:
regsvr32 c:\windows\system\itcc.dll
详细参见:http://frogleg.mvps.org/helptechnologies/oldjunque/itircl.htm

你可能感兴趣的:(chm)