MSDN for VS6 *.COL集合文件解读
来源:互联网 发布:linux c 过去系统时间 编辑:程序博客网 时间:2024/05/22 01:59
上接: 关于MSDN for VB6和VC6
在网上搜了半天关于微软帮助文档集合, hhcolreg.dat ,*.col 文件 都没搜到点有用的.
于是自己分析了一下这两个文件.
(目的是为了把XP系统中的SQL80.col帮助集复制到WIN7系统来,结果也实现了,略.)
_________________________________________________________________________________________________
MSDN for VS6 *.COL 帮助文档集合 文件解读
2:39 2011/10/27 yurenchen
_________________________________________________________________________________________________
*.chm 是帮助文档.
*.chw 是帮助文档索引缓存文件.
*.chi 是帮助文档目录文件(多数*.chm文档是集成了目录的,有的是分类开的)
*.COL 文件是微软帮助文档的集合(内容为XML). 可以用hh.exe 打开,里面定义了集合中包括了哪些书目,和集合的树形结构.
hhcolreg.dat (内容为XML)存在于 %windir%\help\ 和 %AllUsersProfile%\Microsoft\HTML Help\ 文件夹内.
文件随便放在这两个文件夹中任意一个都可以,效果相同.
*.COL文件中定义了文档集合包含哪些书目,但没有定义每一本书的具体路径,所以没有安装帮助文档的时候,直接打开
*.COL文件会出现无法打开文件的情况.
*.COL中引用的书目的具体信息定义就定义在了hhcolreg.dat 文件中.
____________________________________
① *.COL 文件结构.
假设文件名为XXXX.COL
<XML>
<HTMLHelpCollection>
<collectionnum value=CCCC1/> 集合编号
<Folders>
<Folder>
<TitleString value="DDDD"/> 目录的标题
<FolderOrder value=EEEE/> 目录的序号
</Folder>
</Folders>
</HTMLHelpCollection>
</XML>
(一些非必要元素(删除后文档仍能打开的元素,下同)有删减)
____________________________________
② hhcolreg.dat 文件结构
<XML>
<HTMLHelpDocInfo>
<Collections> 打开过的*.col文件都会列在这里(可以删除此段,打开*.col文件时自动生成)
<Collection>
<ColNum value=cccc3/> 集合编号
<ColName value="xxxx.COL"/> *.col文件路径
</Collection>
</Collections>
<DocCompilations> 图书集合的定义(图书的路径,编号 以及 所属集合)
<DocCompilation>
<DocCompId value="dddd"/> 书目编号
<LocationHistory>
<ColNum value=cccc2/> 集合编号
<TitleLocation value="ffff.chm"/> 图书内容文件路径
<IndexLocation value="gggg.chi"/> 图书目录文件路径
</LocationHistory>
</DocCompilation>
</DocCompilations>
</HTMLHelpDocInfo>
</XML>
(一些非必要元素有删减)
_____________________________________
*.col 文件可以放在任意目录内,
*.chm,*.chi等帮助文档也可以放在任意目录内,但要与hhcolreg.dat 文件内定义的一致.
前面两个都到处乱跑,找起来肯定不容易,所以 hhcolreg.dat 就必须老老实实的呆在那几个固定的文件夹里面了,
以方便hh.exe 找到它,并通过它找到散落在世界不同角落的...
----龙珠?
----难道这是龙珠雷达?
.
是不同角落的 帮助文档(*.chm 和 *.chi) .
______________________________________
同一本图书 对应的 集合编号,和在*.col文件的集合编号一致.
*.col文件打开后,在hhcolreg.dat 中的记录 的集合编号也一致.
即 同一图书 CCCC1=cccc2=cccc3,否则无法打开.
*.COL中DDDD可以是非'='开头的自定义字符串,表示目录的名称,
也可以是 '=书目编号',例如 '=dddd' 表示此出目录是 集合中定义的书目编号为dddd的这本图书.
图书内容文件 和 图书目录文件 名称一般是一致的,即ffff=gggg,指出文件的所在.
实例
① "C:\Users\Phoenix\Desktop\VC6.col" 文件内容
②"C:\Users\Phoenix\Desktop\VC6.col"打开效果
③ "C:\Users\All Users\Microsoft\HTML Help\hhcolreg.dat" 文件内容
④"C:\Users\All Users\Microsoft\HTML Help\hhcolreg.dat" 打开效果
上面4幅图片已经很明了了吧.
帮助文档集合有什么用?
比如你要查某个函数,又不确定它在哪个chm里面,就只有一个一个打开找了,或者直接在帮助文档集合里面查找.
ps: 有时间用hta写个小工具来整理电脑上所有的chm文档.
- MSDN for VS6 *.COL集合文件解读
- msdn for VS6.0
- 不能打开msdn.col
- 不从装VS6 MSDN
- java for(Object obj:col)
- col
- col
- col
- 哈希表集合类型[MSDN]
- 将DXSDK的帮助文档加入到VS6的MSDN中
- 将DXSDK的帮助文档加入到VS6的MSDN中
- 将DXSDK的帮助文档加入到VS6的MSDN中
- MSDN for VS2005
- MSDN for VC++6.0
- MSDN for VC 6.0
- msdn library for vs2010
- MSDN for 2010
- useful keyword for MSDN
- LDA模型
- 记录一下近几年工作的一些心得
- 基于按annotation的hibernate主键生成策略
- Javascript IE 内存释放
- C#.ToString()總匯
- MSDN for VS6 *.COL集合文件解读
- 42、Oracle管理与维护.手工创建数据库以及脚本
- hive导入和导出数据
- 在<table>或<div>中如何让传入的文本自动换行
- 软件开发的一个不变的真理
- CSS学习笔记
- 43、数据类型之DATETIME 收藏
- 嵌入式开发基础4
- ACM NOTE01