MSDN 庫以 Collection (集合) 形式組織 HTML Help (.chm) 檔案。兩個關鍵 XML 檔案:
msdnxxx.col:實際集合定義,列出所有 .chm/.chi/.hhc 檔案與目錄結構。hhcolreg.dat:集合註冊資訊,記錄每個集合的路徑、索引檔、版本號、標題等元數據。msdnxxx.col註冊表路徑:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTML Help Collections\Developer Collections
0x0409 英文)。0x0393a0c80) 下的 Filename 值即為 .col 絕對路徑。hhcolreg.datWindows\Help\\Documents and Settings\All Users\Application Data\Microsoft\HTML Help\SHGetSpecialFolderPath(CSIDL_COMMON_APPDATA) + \Microsoft\HTML Help\hhcolreg.dat。collectionnum 判斷:<10000 通常在 Help 目錄。msdnxxx.col:定義目錄結構關鍵標籤:
<masterlangid value="1033"/>:語言 ID (1033=英文, 2052=簡中, 1028=繁中)。<collectionnum value="10002"/>:集合編號,必須與 hhcolreg.dat 對應。<Folder> 節點遞迴定義目錄樹:
<Folder>
<TitleString value="VC知識庫"/> <!-- 目錄頁顯示名 -->
<FolderOrder value="2"/> <!-- 同層排序 -->
<Folder>
<TitleString value="=在線雜志"/> <!-- 子節點名,'=' 可能為特殊標記 -->
<FolderOrder value="1"/>
<LangId value="1033"/> <!-- 必須等於 masterlangid -->
</Folder>
</Folder>
關鍵:第二層 TitleString 的值作為 DocCompId,必須全域唯一,並與 hhcolreg.dat 中 DocCompId 完全一致。
hhcolreg.dat:註冊元數據每個 <DocCompilation> 區塊對應一個 .chm:
<DocCompilation>
<DocCompId value="xtreme_toolkit"/> <!-- 唯一標識,對應 .col 中 TitleString -->
<DocCompLanguage value="1033"/> <!-- 語言 ID -->
<LocationHistory>
<ColNum value="10001"/> <!-- 對應 .col 中 collectionnum -->
<TitleLocation value="[full path]Xtreme.chm"/> <!-- CHM 絕對路徑 -->
<IndexLocation value="[full path]Xtreme.chi"/> <!-- CHI 索引絕對路徑 -->
<LocationRef value=""/>
<Version value="2"/> <!-- 版本號 -->
</LocationHistory>
</DocCompilation>
在 HTML Help Workshop 專案 .hhp 的 [OPTIONS] 區段**必須**啟用:
Create CHI file=Yes
Binary TOC=Yes
產出 .chi (全文檢索索引) 與 toc.hhc (二進位目錄表),MSDN 依賴這兩檔。
CMSDNIntegration 類封裝上述 XML 操作、路徑解析、GUID 生成、版本管理。介面操作:
DocCompId (建議用 GUID)。

原始碼授權:
CMSDNIntegration類依 Codejoke 許可協議免費使用,可直接嵌入自有 MFC 專案定制整合工具。輔助類CLoadLibrary實現 DLL 載入與版本檢測。