HTML Helpの作成方法(基本編)
コンパイル時のエラーメッセージ一覧

HTML Helpのコンパイル時に表示されるメッセージには、以下の種類があります。

Note(注意):
メッセージ番号HHC1000〜2999。それほど大きな問題ではありません。コンパイルは実行されます。
Warning(警告):
メッセージ番号HHC3000〜4999。コンパイルされてもヘルプに欠陥があります。(この警告メッセージの区分があいまいで、同じ4000番代でも、軽微なエラーもあれば、アプリケーションが強制終了するような致命的なエラーもあります。)
Error(エラー):
メッセージ番号HHC5000〜6999。重大な問題があり、コンパイルされません。
番号 メッセージ 内容
HHC1000 An empty HTML tag has been used.

原因:
HTMLファイルのタグの <> 内が空です。

結果:
<> がそのままトピックに表示されます。

対策:
<> が不要な場合は削除してください。トピック中に <> をそのまま表示したい場合は、文字実体参照を使って、<> の代わりに &lt;&gt; と入力してください。コンパイル時にメッセージが表示されなくなります。

HHC3000 <PARAM>tag appears outside of an <OBJECT>tag.

原因:
HTMLファイルの<PARAM>タグが、 <OBJECT>〜</OBJECT>タグの外にあります。

結果:
<PARAM>タグの部分がコンパイルされません。

対策:
PARAM要素は、通常、OBJECT要素のプロパティ値の設定に使用します。(HTML Helpの場合はHTML Help ActiveXコントロールの挿入に主に使われます。)<PARAM>の位置が誤っていないか確認してください。

<PARAM>タグが<APPLET>〜</APPLET>タグ内にあって、このメッセージが表示される場合は、コンパイラ側の間違いです。メッセージが表示されるだけで、特に実害はありません。

HHC3001 The file "○" has a link to a non-existent file: "△".

(Ver.1.22まではこのメッセージが表示されましたが、Ver.1.3以降では表示されなくなったようです。)

原因:
ファイル○に設定されたリンク先のファイル△が存在しません。

結果:
コンパイルしたHTML Helpのリンク個所をクリックすると、「ページを表示できません」と表示されます。

対策:
リンク先のファイルの名前と場所が正しいか確認してください。

chm外のファイルにリンクしている場合、リンク先のファイルが存在しても、このメッセージが表示される場合があります。コンパイル後にリンクをクリックして外部ファイルにジャンプできれば、メッセージだけの問題で、特に実害はありません。

注意:

リンク先のファイルを、chmより上の階層や他のドライブに置くと、それらのファイルがヘルプに含まれない場合があります。リンク先のファイルは、chmと同じフォルダか、下の階層のフォルダに入れるようにしてください。

必ずしも全部のリンクエラーが表示されるとは限りません。表示されたリンクを修正して再コンパイルすると、別のリンクエラーが表示される場合もあります。

HHC3002 The HTML tag "○" is missing a closing angle bracket.

原因:
HTMLファイル中のタグが > で閉じられていません。

結果:
問題のタグ以降の部分が正しくコンパイルされません。

対策:
問題のタグに、 > を追加してください。

注意:
> がない場合、コンパイラはファイルの最後まで > を探し、見つからない場合のみ、このエラーを表示します。見つかった場合は、前の < と、見つかった > を1組と考え、その中の文字を要素名と見なすので、後の部分の解釈がおかしくなり、HHC3003エラーになります。

HHC3003 The HTML tag "○" has invalid characters appearing before the closing angle bracket: △

(Ver.1.22まではこのメッセージが表示されましたが、Ver.1.3以降では表示されなくなったようです。)

原因:
HTMLファイルのタグの > より前に不適切な文字があります。

結果:
問題のタグ以降の部分が正しくコンパイルされません。

対策:

  • < のみの部分がないかチェックし、> を追加してください。
  • トピック中に > をそのまま表示したい場合は、文字実体参照を使って、> の代わりに &gt; と入力してください。
HHC3004 The HTML tag "○" is not a valid HTML tag (it does not begin with a an AlphaNumeric character).

原因:
HTMLファイルの <> 内に、英数字以外の文字が入っています。

結果:
問題のタグの部分が正しくコンパイルされません。

  • 対策:
    <> 内を正しい名前に変更してください。トピック中に <サンプル> のように <> をそのまま表示したい場合は、文字実体参照を使って、 <> の代わりに &lt;&gt; と入力してください。コンパイル時にメッセージが表示されなくなります。
  • <> が正しくても、HTMLファイルの文字符号化方法がJISの場合に、このメッセージが表示されます。文字符号化方法をシフトJISに変更してください。
HHC3005 The HTML end tag "○" has invalid characters before the closing angle bracket (>).

(Ver.1.22まではこのメッセージが表示されましたが、Ver.1.3以降では表示されなくなったようです。)

原因:
HTMLファイル中の終了タグの / の後に不適切な文字(英数字、スペース、タブ、改行以外の文字)があります。

結果:
問題のタグの部分が正しくコンパイルされません。

対策:
問題の終了タグの / の後の文字を修正してください。

HHC3015 An alias has been created to "○" but the file does not exist.

原因:
エイリアスで指定されているファイルが存在しません。

結果:
問題のファイルに割り当てられたトピックをプログラムから呼び出すことができません。

対策:
プロジェクトファイルの[ALIAS]セクションでファイルの名前と場所が正しいか確認してください。エイリアスが不要な場合は削除してください。

このエラーは、[ALIAS]セクションで、「IDH_TEST1=test1.htm#01」のように、トピックの指定した位置にジャンプさせようとした場合にも発生します。しかしこれは単なるメッセージの誤りで、ヘルプは正しくコンパイルされ、プログラムから状況依存ヘルプを呼び出すと、アンカーの位置が表示されます。

HHC4001 The following alias line does not contain an '=' character separating the Topic IDs: ○

原因:
プロジェクトファイルの [ALIAS]セクションに = のない行があります。

結果:
問題のエイリアスに割り当てられたトピックをプログラムから呼び出すことができません。

対策:
[ALIAS]セクションでは、「IDH_TEST1=test1.htm」のように、トピックIDとファイル名を = で区切って指定します。問題の行に = を入れてください。問題の行がコメントの場合は、行の最初にセミコロン(;)を入れてください。

HHC4002 The alias "○" is defined more than once. Only the first alias will be used.

原因:
プロジェクトファイルの [ALIAS]セクションに、エイリアス○が複数回指定されています。

結果:
最初のエイリアスのみが使用され、2つ目以降のエイリアスは無視されます。

対策:
[ALIAS]セクションの2つ目以降のエイリアスを削除してください。

HHC4003 The following option line does not contain an '=' character separating the option and its value:○.

原因:
プロジェクトファイルの [OPTION]セクションのオプション○の行に = がありません。

結果:
問題のオプションは無視されます。

対策:
[OPTION]セクションの問題の行のオプション名の後に = を入れてください。問題の行がコメントの場合は、行の最初にセミコロン(;)を入れてください。

HHC4004 The option "○" is not recognized.

原因:
プロジェクトファイルの [OPTION]セクションの○を認識できません。

結果:
問題のオプションは無視されます。

対策:
新しいバージョンのHTML Help Workshopで作成したプロジェクトファイルを古いバージョンのコンパイラでコンパイルした場合や、HTML Help Workshop以外のツールで作成したプロジェクトファイルをHTML Help Workshopのコンパイラでコンパイルした場合などにこのエラーが発生することがあります。その場合は、対応するコンパイラでコンパイルしてください。

[OPTION]セクションが間違っている場合は、問題の行を削除してください。

HHC4005 The following window line does not contain an '=' character separating the option and its value: ○.

原因:
プロジェクトファイルの [WINDOWS]セクションの○の行に = がありません。

結果:
問題のウインドウ定義は無視されます。

対策:
[WINDOWS]セクションの問題の行のウインドウタイプ名の後に = を入れてください。問題の行がコメントの場合は、行の最初にセミコロン(;)を入れてください。

HHC4006 The file "○" has already been specified in the [FILES] section of the project file.

原因:
プロジェクトファイルの [FILES]セクションに、ファイル名○が複数回指定されています。

結果:
ファイルは1個だけ追加されます。

対策:
[FILES]セクションの2つ目以降のファイル名を削除してください。

HHC4007 The section "○" is unrecognized.

原因:
プロジェクトファイルの○セクションを認識できません。

結果:
問題のセクション全体が無視されます。

対策:
HTML Help Workshop以外のツールで作成したプロジェクトファイルをHTML Help Workshopのコンパイラでコンパイルした場合に、このエラーが発生することがあります。その場合は、対応するコンパイラでコンパイルしてください。セクション名が間違っている場合は、修正してください。(プロジェクトファイルの [ から始まる行がセクション名と見なされます。)

HHC4009 Cannot open the file "○" in the [Text Popup] section.

原因:
プロジェクトファイルの[Text Popup]セクションのテキストファイル○を開くことができません。

結果:
問題のファイルはコンパイルされず、プログラムから状況依存のポップアップヘルプを呼び出すことができません。

対策:
[Text Popup]セクションで指定されているテキストファイルの名前と場所が正しいか確認してください。

HHC4012 The string "○" in line △of the file "□" has not been mapped to a number.

原因:
[Text Popup]セクションのテキストファイル□中で指定されたトピックID ○に対応するマップ番号が、ヘッダファイル中で指定されていません。

結果:
問題のトピックにはマップ番号0が割り当てられます。

対策:
問題のトピックIDに対応するマップ番号をヘッダファイル中で指定してください。

注意:
原因不明ですが、トピックIDに対応するマップ番号を正しく指定していても、このエラーが発生する場合があります。以下のような方法を試してみてください。

  • プロジェクトファイルの[FILES]セクションにヘッダファイル(*.h)を指定します。 ポップアップのテキスト(*.txt)も必ず指定してください。
  • ヘッダファイルにコメントを付けている場合、コメントを削除します。(/、*などが入っている場合、エラーになったという話があります。)
  • [MAP]セクションでヘッダファイルの前後を""で囲んで指定します。(C++の場合)

    #include "test.h"
  • ポップアップのテキストファイルで、topic トピックIDの前の行をあけず、以下のように詰めて入力します。

    .topic IDH_TEST1
    トピック1のテキスト
    .topic IDH_TEST2
    トピック2のテキスト

それでも駄目な場合は、ヘッダファイルを作らず(つまり、トピックID=マップ番号を指定せず)、以下のようにポップアップのテキストファイルに直接マップ番号を指定してみてください。

.topic 1000
トピック1のテキスト

この方法でコンパイルできたというお便りをいただきました。

HHC4014

The following map definition has an invalid context id: ○

原因:
プロジェクトファイルの[MAP]セクションに、不適切なマップ番号が指定されています。

結果:
問題のマップ番号は無視され、プログラムから呼び出すことができません。

対策:
[MAP]セクションでは、通常マップファイル(*.h)をインクルードするように指定しています。このヘッダファイル中では、「#define IDH_TEST1 1000」のようにトピックIDとマップ番号の対応を指定します。トピックIDには文字と数値の両方を使用できますが、マップ番号は数値でなければなりません。マップファイルを開き、問題のマップ番号を変更してください。

HHC4015 Negative context ids are invalid: ○

原因:
マップ番号にマイナス値が指定されています。

結果:
問題のマップ番号は無視され、プログラムから呼び出すことができません。

対策:
マップ番号の数値の前の「-」を削除してください。

HHC4016 Cannot open "○".

原因:
ファイル○を開くことができません。

結果:
問題のファイルはコンパイルされません。

対策:
問題のファイルの名前と場所が正しいか確認してください。正しい場合は、他のプログラムがそのファイルを使用している可能性があります。他のプログラムを終了してからコンパイルしてください。

あるいは、chmファイルが作成されるディスクの空き容量が不足している可能性があります。十分な空き容量を取ってから再コンパイルしてください。

HHC5000 An error occurred while writing "○" into the compiled HTML file.

原因:
chmファイルへのファイル○の書き込み中にエラーが発生しました。

結果:
コンパイルは失敗します。

対策:
chmファイルが作成されるディスクの空き容量が不足している可能性があります。十分な空き容量を取ってから再コンパイルしてください。

HHC5001 An error occurred while reading "○".

原因:
ファイル○の読み取り中にエラーが発生しました。

結果:
コンパイルは失敗します。

対策:
ハードディスクやネットワークの故障により、問題のファイルを読めない可能性があります。ハードディスクやネットワークに異常がないか確認してください。

HHC5002

○:A comment tag (<!--) is missing the close comment tag (-->)

原因:
HTMLファイル○中のコメントの開始タグ (<!--)の後に終了タグ (-->) がありません。

結果:
問題のファイルは正常にコンパイルされません。

対策:
コメントに終了タグを追加してください。

HHC5003 Compilation failed while compiling ○.

原因:
ファイル○のコンパイル中にコンパイルに失敗しました。

結果:
正常にコンパイルされません。

対策:
目次ファイル(*.toc)、索引ファイル(*.hhk)が見つからない場合に、このエラーになります。ファイルの名前と場所を確認してください。

あるいは、chmファイルが作成されるディスクの空き容量が不足している可能性があります。十分な空き容量を取ってから再コンパイルしてください。

HHC5005 TOC Error: Level increments by more than one on line ○

原因:
目次の階層が一度に2階層以上変わっています。

結果:
正常にコンパイルされません。アプリケーションエラーで強制終了する場合があります。

対策:
HTML Help Workshopの[Contents]タブで、目次のページをフォルダの下に置く場合、フォルダより1つ右にずらしてページを配置します。ページを2つ以上右にずらして配置していると、このエラーが発生します。階層を修正してください。

HHC5006 Folder node: ○

原因:
未知のエラーですが、上記のHHC5005に引き続いて発生する場合があります。

結果:
正常にコンパイルされません。

対策:
HHC5005が原因で発生した場合は、HHC5005を解消すると、こちらのエラーも解消します。

HHC5008 An unknown error occurred while creating the index.

原因:
インデックス作成中に未知のエラーが発生しました。

結果:
正常にコンパイルされません。

対策:
バイナリインデックスをONにしている場合は、設定をOFFにしてみてください。また、chmファイルが作成されるディスクの空き容量が不足していないか確認してください。

HHC5010 Cannot open "○". Compilation stopped.

原因:
ファイル○を開くことができません。

結果:
コンパイルされません。

対策:
問題のファイルの名前と場所が正しいか確認してください。正しい場合は、他のプログラムがそのファイルを使用している可能性があります。他のプログラムを終了してからコンパイルしてください。

コンパイルしたヘルプを表示したままの状態で、再コンパイルしようとした場合に、このエラーになります。ヘルプファイルを閉じてからコンパイルを実行してください。

CD-ROMからファイルをコピーしていてファイル属性が読み取り専用になっている場合も、このエラーになります。ファイルの[プロパティ]で[読み取り専用]のチェックを外してください。

問題のファイル名が「C:\TEMP\TFS44E.tmp」のようにテンポラリファイル名の場合は、chmファイルが作成されるディスクの空き容量が不足している可能性があります。十分な空き容量を取ってから再コンパイルしてください。

HHC5012 Cannot create a temporary file in your TEMP path.

原因:
環境変数TEMPで指定されたフォルダにテンポラリファイルを作成できません。

結果:
コンパイルされません。

対策:
TEMPフォルダに十分な空き容量があるか確認してください。また、環境変数TEMP、TMPで指定したパスが正しいか確認してください。

HHC5013 TOC Error: URL reference in the TOC cannot be resolved "○"

原因:
目次のURLの形式が間違っています。または、目次に指定したファイルが見つかりません。

結果:
問題の目次はコンパイルされません。

対策:
HTML Help Workshopの[Contents]タブで、問題のURLまたはファイル名を修正してください。よくあるパターンとしては、「www.keiyu.com/」のように「http://」を付けずに指定している場合に、このエラーが発生します。「http://www.keiyu.com/」と指定してください。

HHC6000 An error occurred attempting to create an internal file. Make certain there is enough disk space on the drive where you are compiling your file.

原因:
内部ファイル作成中にエラーが発生しました。

結果:
コンパイルされません。

対策:
chmファイルが作成されるディスクの空き容量が不足している可能性があります。十分な空き容量を取ってから再コンパイルしてください。

HHC6001 An unknown error occurred while creating the full-text search data.

原因:
全文検索情報の作成中に未知のエラーが発生しました。

結果:
コンパイルされません。

対策:
chmファイルが作成されるディスクの空き容量が不足している可能性があります。十分な空き容量を取ってから再コンパイルしてください。

HHC6002
HHC6003
The file itcc.dll has not been registered correctly.

原因:
itcc.dllがレジストリに正しく登録されていません。

結果:
コンパイルされません。

対策:
メッセージの内容から考えると、レジストリ設定を削除した後、HTML Helpランタイムコンポーネントを再インストールすれば良いはずです。しかし、この方法でもうまくいかない場合があるようです。

一番確実と思われるのは、以下の方法です。

  1. コントロールパネルの[アプリケーションの追加と削除]でHTML Help Workshopをアンインストールします。
  2. Keytoolsをダウンロードしてインストールし、[Find HTML Help Components]を実行します。
  3. [Find HTML Help Components]で検索されたファイルをすべて削除します。
  4. HTML Help Workshopを再インストールした後、JapaneseのHTML Helpランタイムコンポーネントをインストールしてください。