それではHTML Help1.x形式のヘルプを生成する手順を見ていきましょう。
HTML Help 1.x形式のヘルプを構成する要素
HTML Help 1.x形式のヘルプ(*.chm)を構成する要素は次の通りです。
HTML Help 1.x形式関連のファイル一覧
ファイルの種類 | 拡張子 | 説明 |
---|---|---|
プロジェクトファイル | hhp | コンパイルに必要なヘルプ全体の情報 |
目次ファイル | hhc | ヘルプの目次情報 |
索引ファイル | hhk | キーワード情報 |
トピックファイル | htm | ヘルプの1ページに該当するHTML |
HTML Help 1.x形式のヘルプ(*.chm)を生成するには、これらのファイルをそろえてからコンパイルします。SandcastleからHTML Help 1.x形式のヘルプを生成する流れは下図のようになります。
(1) XslTransform.exeで、クラスの型情報から目次を生成
(2) ChmBuilder.exeで、HTML Help 1.x形式に必要なファイル一式を生成
(3) DBCSFix.exeで、前の手順で生成されたhtmlにパッチを適用
(4) hhc.exeで、HTML Help1.x形式のヘルプ(*.chm)を生成
ここでは、前編で紹介したXslTransform以外のプログラムについて見ていきましょう。
ChmBuilder.exeによるコンパイルに必要なファイルの生成
ChmBuilderは、HTML Help1.x形式のヘルプに必要なファイルを生成するプログラムです。
BuildAssembler.exeの実行例
ChmBuilder.exe /project:SampleLib /html:Output\html /lcid:1041 /toc:Toc.xml /out:Chm
ここでは、Toc.xml(Table of Contents:目次情報)を引数に設定して、プロジェクトファイル(*.hhp)、目次ファイル(*.hhc)、索引ファイル(*.hhk)をChmフォルダに出力しています。
ChmBuilderには、パラメータとして次の項目を設定できます。
パラメータ | 説明 |
---|---|
/html: | HTMLが格納されているフォルダを指定 |
/project: | プロジェクトの名前 |
//toc:tocFile | 言語IDの指定(既定値は1033、日本語は1041) |
/lcid: | HTMLが格納されているフォルダを指定 |
/out: | 出力フォルダ |
/metadata+|- | メタデータを出力するか(既定値はfalse) |
/config:configFilePath | 設定ファイルを指定(未指定の場合はChmBuilder.config) |
DBCSFix.exeによるHtmlパッチ
DBCSFix.exe(Double Byte Character Setの略:2バイト文字)は、アジア系言語でのChmファイル生成時に発生しうる文字コード問題を回避するパッチプログラムです。
DBCSFix.exeの実行例
DBCSFix.exe /d:Chm /l:1041
この例では、/d:パラメータで対象フォルダ(hhpファイル等があるフォルダ)を、/l:パラメータで言語コードを指定しています。このコマンドを実行するとHTMLファイルが更新されます。 ChmBuilderとDBCSFixによって、HTML Help1.x形式のヘルプのコンパイルに必要なファイルが揃います。
hhc.exeによるヘルプのコンパイル
コンパイルに必要なファイルが揃ったら、hhc.exeでコンパイル行いchmファイルを生成します。コンパイルはプロジェクトファイルを指定するだけです。
hhc.exeの実行例
hhc.exe Chm\SampleLib.hhp
以上の手順によって、SandcastleからHTML Help1.x形式のファイル(*.chm)を生成できます。