# プロローグ
愛用の XP で久々に新しいソフトを作り、10 での動作もクリア。画像たっぷりの詳細なヘルプも完成。Windows10にセットして、さて出来栄えはドレドレ。まずはヘルプはどんな具合かな・・・。ナント・・・ヘルプがエラーになる!
従来の Win Help は Windows8 以降サポート中止。「HTML Help を作成するように」 なんだそうです。
私の会心作 OursFree もこの何年もヘルプは動いていないのか・・・・・・。
気を取り直して HTML Help なるものを調べてみましたが、100ページを越すHTMLのヘルプを何本も改めて作るのはとてもじゃない。
従来の資産(原稿)を有効活用するためには、対策ソフトを作るしかない、と決意して色々試行錯誤。
Word が吐き出した HTMLファイル
これをページ毎の HTMLファイル に分割し、HTML Help Workshop
脚注記号 # & K + A は除去し、二重下線と隠し文字で指定するリンク部分はファイルへのリンクに書き換えます。
HTML Help Workshop が無い場合の為に、目次つきホームページタイプのヘルプ
HTMLファイルは自由というかゴチャゴチャというか、千差万別で、全てに対応できているとはいえませんが、相当にブラシアップして実用レベルになったと思うので公開します。駄目もとで試す価値はあると思います。
# 使い方
HTML Help には原稿とする ページ毎のHTMLファイル が必要です。
Win Help の原稿としていた
AfxCore.rtf などのリッチファイルを Word で読み込み、ページ(*.htm,*.html) で書き出すと、全てのページが連結されたファイルとなります。ページ毎のHTMLファイル を書くには相当の労力が必要です。
【ヘルプのヘルプ】は、上記の連結1ページとなった HTMLファイル をページ毎のファイルに分割します。
あわせて、脚注記号の # & K + A を取り除きます。
また、二重下線と隠し文字で記述していたリンク部分を、HTMLファイル 呼び出しの記述に書き換えます。
HTML
Help (***.chm) を作成するには HTML Help Wprhshop というアプリケーションが必要です。
【ヘルプのヘルプ】は HTML Help の代替手段と出来る ホームページライクのヘルプ機能 を作成することもできます。この場合は HTML Help Wprhshop は不要です。
使い方
A.
原稿とする HTMLファイルを用意 します。
B.
変換を実行するフォルダ [HELP] を作成し、ファイルと画像フォルダをコピーします。
目次ファイル(***.cnt) があれば一緒にコピーします。
C.
[ファイル] [開く] で用意したファイルを読み込みます。
D.
[HTML変換] [HTML Help 変換開始] をクリックします。
E.
フォルダ [HELP] にページ分割した HTMLファイルが保存されます。
原稿の HTMLファイル(と目次ファイル)は フォルダ [HELP] と並びの
[Finished] フォルダに移動します。画像フォルダはそのまま [HELP] に残ります。
同時に Wprhshop のプロジェクト(*.hhp)と目次(*.hhc)を生成します。
[Finished] フォルダにはページ見出しとファイル(***.htm)の対照リスト
ListTitl.txt
また、その後の作業内容を説明した HTML_Help_の作成と組込.txt も保存します。
F.
ヘルプ実行ファイルを作成して、対象アプリケーションの [ヘルプ] [HTML Help 目次] などのコマンドを完成
または、HTML Help (***.chm) のショートカットをディスクトップなどに作ります。
# HTMLファイル
AfxCore.rtf などのリッチファイルを Word で変換した HTMLファイルは全てのページが連結された1頁のファイルになります。
テキストファイルとして見た全体構造は、ヘッダー部、頁記述部、脚注部 から成り、幾つかのキーワードで区分できます。
ヘッダー
<div
class=Section1>
1ページ
<br clear=all style='page-break-before:always'>
2ページ
<br clear=all style='page-break-before:always'>
・・・
<br clear=all style='page-break-before:always'>
・・・
<div
style='mso-element:footnote-list'><![if !supportFootnotes]><br
clear=all>
脚注
まずヘッダーを分離し、余分と思われる項目を消去し、各頁のヘッダとします。
ここから脚注記号、頁ID、などを抽出し、消去とリンクの書き換えが必要です。
次に頁の分割です。頁IDをファイル名として分離保存します。不要なコードの削除も必要。
ところが、HTMLファイルというのは千差万別で、多様な記述になっています。途中で改行されていたり、ホワイトスペースが入ったり、記述文字列がバラバラに分けられたり。
脚注の呼び方も下記のように異なります。
<div style='mso-element:footnote-list'> だったり <div style='mso-element:endnote-list'> だったり。
文字列は >***< のところに入っていますが、一体のものとバラバラのものと色々。二重下線は文字列の前に
double'> が入っていますがバラバラ文字列の場合はとても複雑。
double'> の効果が後の文字列にわるさをしないように
</a> の追加が必要だったり。
文字列 “[開く...]コマンド”もどうかするとこういう具合。
<u style='text-underline:do****'><span lang=EN-US>[</span></u></span><b><span
style='font-size:12.0pt;font-family:"MS ゴシック";mso-ascii-font-family:"MS Pゴシック";
mso-hansi-font-family:"Times New Roman"'>開く</span></b><b><span lang=EN-US
style='font-size:12.0pt;font-family:"MS Pゴシック";mso-fareast-font-family:"MS ゴシック";
mso-hansi-font-family:"Times New Roman"'>...</span></b><u style='text-underline:
do****'><span lang=EN-US style='font-size:12.0pt;font-family:"MS Pゴシック";
mso-fareast-font-family:"MS ゴシック";mso-hansi-font-family:"Times New Roman"'>] </span></u><u
style='text-underline:do****'><span style='font-size:12.0pt;font-family:"MS ゴシック";
mso-ascii-font-family:"MS Pゴシック";mso-hansi-font-family:"Times New Roman"'>コマンド</span></u><span
lang=EN-US style='font-size:12.0pt;font-family:"MS Pゴシック";mso-fareast-font-family:
"MS ゴシック";mso-hansi-font-family:"Times New Roman";display:none;mso-hide:all'>HID_File_OPEN</span><span
各種パターンに対応するにはかなりの工夫が必要です。
# HTML Help
Workshop
M社が提供している無料のアプリケーション。
ダウンロード先を探すのに苦労しました。
下記のサイトは参考までに。
https://softradar.com/html-help-workshop/download/
生成したプロジェクトファイルを開きコンパイルすると、HTML
Help(*.chm) が完成します。
# HP Type Help
各ページの先頭に [目次]リンク が入り目次に戻ることができます。
ヘルプの起動は目次ファイルの起動で行います。
目次のHTMLファイル ***.htm は
***.cnt ファイルより作成します。
***.cnt ファイルが無い場合は全ページの目次となります。
目次ファイルは Word で編集可能です。
目次ファイル(*.htm)
各ページには [目次] のリンクが入ります。
# HTML原稿ファイル
アプリケーションの開発の時に Win Help 用に作った AfxCore.rtf などの原稿ファイルを Word で HTMLファイルに変換します。
リッチファイルの時点で {bmc
fileopen.bmp} などの画像挿入記述部分は全て画像のコピーペーストに置き換えます。そのままではHTML変換しても画像は表示できません。
[ファイル] [名前を付けて保存] で [Webページ(*.htm
*.html)] を指定して保存します。
画像はファイルと同じフォルダーの ***.files というフォルダに
png形式 で出力されます。
もし ***.files に jpg形式 で保存された画像がある場合は HTML Help Workshop で HTML Help を作った場合に画像が表示されません。全て
png形式 になるように調整
原稿とするリッチテキストファイルが手元に無い場合は、既存のアプリケーションに添付されている Win Help (***.hlp) から得ることも可能です。
目次ファイル(*.cnt) は Win Help(*.hlp) に添付されているはずです。
Windows8以降の開発環境で AfxCore.rtf などが提供されているのかどうかは知りませんが、従来のWin
Help に慣れた人にはわかりやすいフォームです。
リッチテキストファイルを作るには、Word で新規ドキュメントを開き、[挿入]
[脚注] を指定します。
設定ダイアログで [番号の付け方] [任意の脚注記号] [#] を入力します。
頁の先頭の # より後に何行かの改行を入れてから [挿入] [改ページ] で次のページに移ります。
最初のページの 先頭の # から改行までをコピーし、次のページに次々とペーストしておきます。
頁の先頭の # の隣に頁の見出し、脚注の # の隣に頁のリンクID を
HID_FILE_OPEN などと入力します。
記事を書き、リンク部分は二重下線を入れ、直後にリンクIDを隠し文字で入れます。
画像はコピーペーストして貼り付けます。
[ファイル] [名前を付けて保存] で [リッチテキスト形式(RTF)(*.rtf)]
で保存します。
次に、[ファイル] [名前を付けて保存] で [Web ページ(*.htm,*.html)] で保存します。
画像はファイルと同じフォルダーの ***files というフォルダに png形式
で出力されます。
(以上 Word2000 での例)
# 画像の調整
HTML Help Workshop では、どうも処理する画像は png形式 に限られているようです。
Word が
RTF/HTML 変換するとき、何かの具合で同じ画像が jpeg と png の二つの形式で保存される場合があります。このまま HTML
Help 変換を行うと、該当画像は表示されません。
この場合は下記のように処置してください。
01.
HTML画像ファイルを出力すると画像は
***.files フォルダに出力されます。
02.
***.files フォルダに
jpeg形式 の画像があったらビューアーで開いて確認。
03.
原稿の ***.rtf でその画像を探す。
04.
該当画像を右ボタンクリックでコピー。
05.
ペイントアプリケーションを開いておいてペースト。
06.
[名前をつけて保存] で
256色ビットマップ として一旦保存。
07.
[全て選択] で選択しコピー。
08.
原稿の ***.rtf に戻り元画像を削除してペースト。
09.
全ての該当画像に上記の処置をします。
10.
原稿の ***.rtf を保存します。
11.
[名前をつけて保存] て
web ページ(*.htm, *.html) で保存。
12.
***.files フォルダに
jpeg形式 の画像が無いことを確認。
# 目次ファイル
最新の開発環境の事は分かりませんが、従来はアプリケーションの開発時に Win
Help 用に
***.cnt という目次ファイルが作られました。
中身はテキストファイルで、拡張子が [cnt] になったものです。ですから、テキストファイルを作って拡張子 [txt] を [cnt] に書き換えれば作成できます。
【ヘルプのヘルプ】で [ファイル][新規作成] で開いたドキュメントに記述し、*.cnt として保存することもできます。
目次ファイルは下記例のように記述します。
1 使い方=H_HOWTO
1 メニュー
2
[ファイル] メニュー=H_MENU_FILE
2
[ファイル+] メニュー=H_MENU_FILE_PLUS
2
[表示] メニュー=H_MENU_VIEW
・・・
2
内部見出し
3
リンク=・・・
・・・
1 ファイルを開く/保存する
2
開く/保存ファイルの種類=H_TYPEFILE
・・・
1 の後のタイトルは基本的に見出しですが、リンクを記述することも出来ます。
2 の後のタイトルはページの内容で、リンクを記述します。
= の後はページのリンクIDです。
2 にリンクでなく見出しを記述すると上のグループに属する見出しとなります。その下のリンクは
3 で記述します。以下同様です。
# ListTitl.txt
各ページの見出しとそのページのファイル名の対象リストです。
[Finished]フォルダに保存します。
目次を再編集
# [ヘルプ]コマンド
コマンドの関数は下記例のように記述します。
void CHhelpApp::OnHelpHtml()
{
//HTML
Help
CString
FileName = m_MyPath;
FileName +=
"Hhelp.chm";
ShellExecute(
NULL, _T( "open"), FileName, NULL, NULL, SW_SHOWNORMAL);
}
void CHhelpApp::OnHelpHptype()
{
//HP
Type Help
CString
FileName = m_MyPath;
FileName
+= "HpType\\Hhelp.htm";
ShellExecute(
NULL, _T( "open"), FileName, NULL, NULL, SW_SHOWNORMAL);
}
HpType は変換作業フォルダです。Help などの名称でもかまいません。
Hhelp.chm はHTML Help ファイル、Hhelp.htm は HP Type Help の目次ファイル です。
m_MyPath はアプリケーションの実行ファイルのパスです。
char
HelpPath[260];
strcpy(
HelpPath, pApp->m_pszHelpFilePath);
char
drive[_MAX_DRIVE], dir[_MAX_DIR], fname[_MAX_FNAME], ext[_MAX_EXT];
_splitpath(
HelpPath, drive, dir, fname, ext );
m_MyPath
= drive;
m_MyPath += dir;
m_MyPath には Hhelp.chm ファイル や
HpType フォルダ(各ページの***.htm と 画像フォルダ ***files が入っている) をコピーします。
# HTML
Help の作成
次のように操作します。
01.
HTML Help Wprhshop を立ち上げる。
02.
[File][Open] から【ヘルプのヘルプ】で生成したプロジェクトファイル(**.hhp)を開く。
03.
[File][Compile]
でコンパイル。
[Contents]ボタンをクリックすると、目次を確認できます。
初期画面(Default topic)を変更するには Change project options を使います。
変換の時に 目次ファイル(*.cnt) が無い場合は全ページの目次となります。
まず不要なページを選択して Delete selection で消去します。
順番を変えたい時は、ページを選択して Move selection up /
down で移動します。
ページのタイトルを変更する場合は、ページを選択して Edit
selection で変更します。
Insert Heding で見出しを挿入します。選択ページの下に入ります。
→
全ての見出しを挿入したら、見出しの直下のページを選択し、Move
selection right でページを一段下げます。
→
全て完了したら、[File][Compile]でコンパイルすると、HTML
Help の ***.chm が完成です。
プロジェクトファイル(***.hhp) と 目次ファイル(Table of
conyents.hhc) は変更されています。このまま放置すると次に変換をした時に上書きされてしまいます。***.chm と共に他のフォルダにバックアップしておいてください。
目次ファイル(*.cnt)のリンクIDと原稿ファイル(*.rtf,
*htm)のページID(# HID_・・・ など)が一致しない場合(Win Help を解凍した場合など)があります。
【ヘルプのヘルプ】はIDが一致しない場合は、ページの一番近い見出しを探しそこへのリンクを記述します。
目次ファイル(-*.cnt)のタイトルとページの見出しの一致率が低い場合は、下図のように目次を作成します。
HTML Help Workshpの目次
HP Type Help の目次
☆印がついた部分が一致率の低いページです。もっと低い場合は★印になります。
←の後がページの見出しです。
この部分は再編集してください。
# 目次の編集
HTML Help Workshpの目次
HTML Help Wprhshop の Contentsタブ で該当ページほ選択し Edit Selectionボタン
をクリックして編集します。
→
HP Type Help の目次
タイトルだけの編集なら Word で書き換えれば済みます。
リンクを編集する場合は【ヘルプのヘルプ】またはテキストエディタで開いてリンク部分を書き換えます。
# 開発環境がない場合
アプリケーションに付属している Win Help (***.hlp) から原稿ファイル(***.rtf)と画像ファイルを得る事ができます。
Universal Extractor というアプリケーションで
***.hlp ファイルを解凍できます。
得られた ***.htm で同じ手順で HTML Help や
HP Type Help を作ります。
目次ファイル ***.cnt は Win Help(*.hlp) に添付されています。
HTML Help (***.chm) や HP Type Help の目次ファイル(***.htm)
のショートカットを作り、そこからヘルプを起動します。
# Win Help コマンドの処置
Windows8 以降で Win Help の[ヘルプ]コマンドをクリックすると、勝手に Microsoft Edge が立ち上がり大変面倒です。
Win Help を搭載したアプリケーションならば、Windows のバージョンをチェックしてコマンドを無効にする関数を用意した方が良いでしょう。
F1キーによる Win Help の立ち上げ機能は対処方法が分かりません。String
Table でメッセージを変えておきます。
以下参考コード
AFX_IDS_IDLEMESSAGE ヘルプを表示するには F1 を押してください。Windows8
以降では F1 を押さないでください。
void
CHhelpApp::OnUpdateHelpFinder(CCmdUI* pCmdUI)
{
//Win
Help
if
( m_WinHelp)
{
pCmdUI->Enable(
TRUE);
}
else
{
pCmdUI->Enable(
FALSE);
}
}
ヘルプコンテキストも無効化します。
//Win Help Context//MAINFRAMEメニューの場合は
nFrame::OnUpdateContextHelp(CCmdUI* pCmdUI)
void CHhelpApp::OnUpdateContextHelp(CCmdUI* pCmdUI)
{
if
( m_WinHelp)
{
pCmdUI->Enable(
TRUE);
}
else
{
pCmdUI->Enable(
FALSE);
}
}
void CHhelpApp::CheckWinVer()
{
//Windows
Version をチェックしWinHelp目次の表示モードm_WinHelpをセットする
OSVERSIONINFOEX
verex;
verex.dwOSVersionInfoSize
= sizeof(OSVERSIONINFOEX);
GetVersionEx((OSVERSIONINFO*)&verex);
int
MajorVersion = verex.dwMajorVersion;
int
MinorVersion = verex.dwMinorVersion;
//int
ProductType = verex.dwProductType; //MSDEV6ではverexにないメンバ
m_WinHelp
= TRUE;
if
( MajorVersion == 3 && MinorVersion == 1); //NT
3.1
else
if ( MajorVersion == 3 && MinorVersion == 5); //NT
else
if ( MajorVersion == 3 && MinorVersion == 51); //NT 3.51
//else
if ( MajorVersion == 4 && MinorVersion == 0 && ProductType ==
1); //NT 4.0
//else
if ( MajorVersion == 4 && MinorVersion == 0 && ProductType ==
0); //95
else
if ( MajorVersion == 4 && MinorVersion == 0); //NT 4.0 //95
else
if ( MajorVersion == 4 && MinorVersion == 10); //98 //98SE
else
if ( MajorVersion == 4 && MinorVersion == 90); //me
else
if ( MajorVersion == 5 && MinorVersion == 0); //2000
else
if ( MajorVersion == 5 && MinorVersion == 1); //XP
else
if ( MajorVersion == 5 && MinorVersion == 2); //2003R2
else
if ( MajorVersion == 6 && MinorVersion == 0); //Vista
//else
if ( MajorVersion == 6 && MinorVersion == 1 && ProductType ==
1); //7
//else
if ( MajorVersion == 6 && MinorVersion == 1 && ProductType ==
3); //2008R2
else
if ( MajorVersion == 6 && MinorVersion == 1); //7 //2008R2
//WinHelpは8.1までサポートしているが
//マニフェストを指定しない場合ではWindows
10ではWindows8相当の答えが返ってくる
//else
if ( MajorVersion == 6 && MinorVersion == 2); //8 //2012
//else
if ( MajorVersion == 6 && MinorVersion == 3); //8.1 //2012R2
//else
if ( MajorVersion == 10 && MinorVersion == 0); //10
else
{
m_WinHelp
= FALSE;
}
}
# ファイルメニューのコマンド
新規作成 |
新規にファイルを作成 |
開く |
既存のファイルを開く |
閉じる |
作業中のファイルを閉じる |
上書き保存 |
作業中のファイルを上書きして保存 |
名前を付けて保存 |
作業中のファイルを新しい名前で保存 |
印刷 |
作業中のファイルを印刷 |
印刷プレビュー |
印刷イメージを表示 |
プリンタの設定 |
プリンタ/印刷オプションの変更 |
アプリケーションの終了 |
アプリケーションを終了し、ファイルの保存を指示 |
# 編集メニューのコマンド
元に戻す |
直前に行った動作を元に戻す |
切り取り |
選択範囲を切り取ってクリップボード゙に保存 |
コピー |
選択範囲をコピーしてクリップボード゙に保存 |
貼り付け |
クリップボード゙の内容を貼り付け |
# [HTML変換] メニューのコマンド
準備-A |
変換の準備を説明する |
準備-B |
変換の準備を説明する |
準備-C |
変換の準備を説明する |
準備-D |
変換の準備を説明する |
準備-E |
変換の準備を説明する |
HTML Help 変換開始 |
ヘルプ原稿文書のHTKLファイルをページに分割しHTML Help Workshop のプロジェクトと目次を作る |
HP TypeL Help 変換開始 |
ヘルプ原稿文書のHTKLファイルをページに分割し目次とそのリンクを作る |
# 表示メニューのコマンド
ツールバー |
ツールバーの 表示/非表示の表示切り替え |
ステータスバー |
ステータスバーの 表示/非表示の表示切り替え |
# ウィンドウメニューのコマンド
新しいウィンドウを開く |
作業中のウィンドウを複写して表示 |
重ねて表示 |
ウィンドウを重ねて表示 |
並べて表示 |
ウィンドウを並べて表示 |
アイコンの整列 |
ウィンドウの下部にアイコンを整列 |
# ヘルプメニューのコマンド
Win Help 目次 |
ウインドウヘルプの目次を表示する |
HTML Help 目次 |
HTMLヘルプを表示する |
HP Type Help 目次 |
ホームページタイプのヘルプの目次を表示する |
ホームページ |
ホームページを表示する |
Hhelp のバージョン情報 |
プログラムの情報、バージョンそして著作権を表示 |
# 準備-A
HTML原稿ファイルをページに分割する準備を説明します。
開発時に作成した Win Help の原稿となる リッチファイル
AfxCore.rtf等 を用意します。
リッチファイルは Win Help の実行ファイル ***.hlp を
Universal Extractor で解凍しても得られます。
原稿の リッチファイルを Word で開き
{bmc filenew.bmp} {bml scmenu.bmp} などの画像挿入文を消去し
filenew.bmp scmenu.bmp などの画像ファイルを開き
画像を全選択してクリップボードにコピーし
原稿のリッチファイルに貼り付けます。
全ての画像挿入文を画像の貼り付けに置き換えます。
編集した原稿はリッチファイルとして保存しておくきます。
HTML Help を作成する時は、画像を 256色ビットマップ としてからコピー貼り付けします。
HTML Help Wprkshop アプリケーションが 24ビットビットマップ を受け付けないことがある為です。
詳しくは [ヘルプ] の [関連項目][画像の調整] を参照してください。
# 準備-B
HTML原稿ファイルをページに分割する準備を説明します。
画像を編集した原稿の リッチファイル(*.rtf) を Word で開き、Webページ(*.htm,
*html) として名前を付けて保存します。
このファイル名は Web として開いた時の文書名として表示されます。
ファイルが大きすぎる場合は、[開く
その場合は、リッチファイルを複数のファイルに分割してください。
# 準備-C
HTML原稿ファイルをページに分割する準備を説明します。
変換を実行するフォルダを作り
原稿のHTMLファイル(*.htm) と 画像の入ったフォルダ を選択コピ−して貼り付けます。
# 準備-D
HTML原稿ファイルをページに分割する準備を説明します。
編集された目次 を作る場合は
HP Type Help を作る場合は、Win Help を作るときに目次とした
*.cnt ファイルを選択コピ−して
変換を実行するフォルダに貼り付けます。
HTML原稿ファイルと目次ファイル
目次ファイル(*.cnt) が無い場合は、全頁の目次が作成されます。
# 準備-E
HTML原稿ファイルをページに分割する準備を説明します。
変換を実行するフォルダの全ての原稿ファイル(*.htm)を
[ファイル][開く]コマンドで開きます。
ファイルが大きすぎる場合は、エラー表示が出ます。
サイズの目安は およそ1000KB以下 です。[準備-B
目次ファイル(*.cnt) がある場合も、[ファイル][開く]コマンドで開きます。
以上の準備が完了したら [変換開始] コマンドを指定します。
[HTML Help 変換開始] では HTML Help
Workshop の プロジェクトと目次ファイルを生成します。
[HP Type Help 変換開始 ] では 目次と各ページの HTMLファイル を生成します。
# HTML Help 変換開始
開いている全ての HTML原稿ファイル をページに分割し、必要な書き換えを行います。
また、HTML Help Workshop のプロジェクトファイル(*.Hhp)と目次ファイル(Table of
contents.hhc)を生成します。
目次ファイル(***.cnt)が開いている場合は、Table of contents.hhc はそのフォームで作成します。
目次ファイル(***.cnt)が無い場合は、全てのページの目次を作ります。HTML Help
Workshop で編集すれば見出しのついた目次に変更できます。
変換後、HTML原稿ファイル は 作業フォルダ([HELP]など)と並びの
[Finished]フォルダに移動しますが。付属する画像ファイルのフォルダ(***files)は残します。
目次ファイル(***.cnt)があれば同じく[Finished]フォルダに移動します。
[Finished]フォルダには下記のファイルも保存します。
ページ見出しとファイル(***.htm)の対照リスト ListTitl.txt
その後の作業内容を説明した HTML_Help_の作成と組込.txt
# HP Type Help 変換開始
開いている全ての HTML原稿ファイル をページに分割し、必要な書き換えを行います。
目次ファイル(***.cnt)が開いている場合は、HTML目次ファイル(***.htm)を作成し、各ページの文頭に[目次]へのリンクを入れます。
目次ファイル(***.cnt)が開いていない場合は、全ページの目次ファイル(***.htm)を作ります。これは
Word で編集して見出しの付いた目次に変更することができます。
変換後、HTML原稿ファイル は 作業フォルダ([HELP]など)と並びの
[Finished]フォルダに移動しますが。付属する画像ファイルのフォルダ(***files)は残します。
目次ファイル(***.cnt)があれば同じく[Finished]フォルダに移動します。
[Finished]フォルダには下記のファイルも保存します。
ページ見出しとファイル(***.htm)の対照リスト ListTitl.txt
その後の作業内容を説明した HP_type_Help_の組込.txt
# Ver.01.00
2023.02. リリース
新規文書を作成します。テキスト形式で開きますが、保存時に拡張子は変えられます。
既存の文書は
[開く...] コマンド.を使います。
ツールバー:
キーボード: CTRL+N
既存の文書を開きます。
一度に複数の文書を開くことができます。[開く]ダイアログ ボックス で、Ctrlキーを押して選択/ドラッグ/Shiftキーを押して選択 します。
複数の文書の編集を切り替えるには、[ウィンドウ] メニューの [ウィンドウ名 1, 2, ...] コマンド. を使ってください。
または Tab(Shift+Tab)キーでも切り替えできます。
新たに文書を作成するには [新規作成] コマンド を使ってください。
ツールバー:
キーボード: CTRL+O
#[開く] ダイアログ ボックス
[開く] ダイアログ ボックスでは、以下のオプションが設定できます。
ファイル名
開きたい文書の名前を入力または選択します。
リスト ボックスには、[ファイルの種類]ボックスで選択したファイル形式に対応する拡張子を持ったファイルが一覧表示されます。
ファイルの種類
開きたい文書のファイル形式(*.txt *.htm *.cnt)を選択します。
ドライブ
開きたい文書が保存されているドライブを選択します。
ディレクトリ
開きたい文書が保存されているディレクトリを選択します。
現在アクティブになっている文書のウィンドウを閉じます。
ウィンドウを閉じる前に、文書を保存するかどうか確認します。
文書を保存しないで閉じた場合、前回の保存時以降に加えた変更内容はすべて失われてしまいます。
まだファイル名を付けていない文書を閉じようとすると、[名前を付けて保存] ダイアログ ボックス を表示しますので、作業中の文書に適切なファイル名を付けて保存することができます。
文書のウィンドウのコントロール ボックスをダブル クリックしてウィンドウを閉じることもできます
作業中の文書のファイル名、保存場所を変更しないで保存します。
新規作成した文書を初めて保存するときに、[名前を付けて保存] ダイアログ ボックス を表示しますので、作業中の文書に適切なファイル名を付けて保存することができます。
ファイル名、保存場所を変更して保存したいときは [名前を付けて保存...] コマンド. を使います。
ツールバー:
キーボード: CTRL+S
作業中の文書にファイル名を付けて保存します。[名前を付けて保存] ダイアログ ボックス を表示しますので、作業中の文書に適切なファイル名を付けて保存することができます。
作業中の文書のファイル名、保存場所を変更しないで保存したいときは [上書き保存] コマンド を使います。
# [名前を付けて保存...] ダイアログ ボックス
[名前を付けて保存...] ダイアログ ボックスでは、ファイル名や保存場所を指定する以下のオプションが設定できます。
ファイル名
元のファイル名と違う名前でファイル名を入力します。[名前を付けて保存...] ダイアログ ボックス内に独自の拡張子を追加することができます。
ドライブ
文書を保存するドライブを選択します。
ディレクトリ
文書を保存するディレクトリを選択します。
ネットワーク...
ネットワークに接続し、 新しいドライブ名を設定します。
作業を終了します。
アプリケーション
ウィンドウのコントロール メニューにある [閉じる] コマンドを使って作業を終了することもできます。
文書に加えた変更点がまだ保存されていないときは、保存するかどうか確認するダイアログ ボックスを表示します。
マウスで アプリケーション
ウィンドウのコントロール メニュー ボックスをダブルクリックします。
キーボード: ALT+F4
# [元に戻す/元に戻せません]コマンド
可能であれば、直前に行った編集操作をキャンセルし、文書を元に戻します。
キーボード: Ctrl;+Z または Alt-BackSpace
# [切り取り] コマンド ([編集] メニュー)
現在選択しているデータを文書から削除してクリップボードに保存します。
データが選択されていないときは、このコマンドは使用できません。
データをクリップボードに切り取ると、それまでクリップボードに保存されていた内容は新たに切り取った内容に置換されます。
ツールバー:
キーボード: CTRL+X
# [コピー] コマンド
文書内で選択されたデータをコピーしてクリップボードに保存します。
データが選択されていないときは、このコマンドは使用できません。
データをクリップボードにコピーすると、それまでクリップボードに保存されていた内容は新たにコピーした内容に置換されます。
ツールバー:
キーボード: CTRL+C
# [貼り付け] コマンド
クリップボードの内容をカーソル位置に挿入します。
クリップボードに何も保存されていないときは、このコマンドは使用できません。
ツールバー:
キーボード: CTRL+V
ツールバーの表示、非表示を切り替えます。
ツールバーには、[開く...]などの、最もよく使われるコマンドと同じ機能を持ったツールが含まれています。
ツールバーが表示されているときは、このコマンド名の横にチェックマークが表示されます。
ツールバーは、アプリケーション ウィンドウ上部で、メニュー バーのすぐ下に表示されます。
使用する多くのツールをマウスでクリックして操作します。
ツールバーの表示と非表示を切り替えるには、[表示] メニューの [ツールバー] コマンドを選択します。
[ステータスバー]の表示、非表示を切り替えます。
ステータスバーには、メニュー コマンドやツールバーのボタンを選択したときにコマンドの簡単な説明や、キーボードの特殊キーのON/OFF の状態などが表示されます。
ステータスバーが表示されているときは、このコマンド名の横にチェックマークが表示されます。
ステータスバーは、ウィンドウの一番下に表示されます。
ステータスバーの表示、非表示を切り替えるには、[表示] メニューの [ステータスバー] コマンドを選択してください。
ステータス バーの左側の部分には、メニューコマンドを選択したときにそれぞれの簡単な説明が表示されます。
同様に、ツールバーのボタンを押したままにしても簡単な説明が表示されます。
説明を見た後でそのツールバーのコマンドの実行を中止したいときは、マウスポインタをそのツールバー ボタン以外の位置に移動してマウスボタンを離します。
ステータス バーの右側の部分には、以下のキーの ON/OFF の状態が表示されます。
カナ [カナ] キーが ON の状態
CAP [Caps
Lock] キーが ON の状態
NUM [Num
Lock] キーが ON の状態
SCRL [Scroll
Lock] キーが ON の状態
# [新しいウィンドウを開く] コマンド
作業中のウィンドウと同じ内容を表示する別のウィンドウを開きます。
1つの文書に対して複数のウィンドウを開くことができるので、同時に1つの文書のいろいろな部分をそれぞれのウィンドウに表示することができます。
1つのウィンドウで文書の内容を変更すると、その文書を表示する他のすべてのウィンドウにもその変更が反映されます。
新規ウィンドウを開くと、そのウィンドウがアクティブになり、他のウィンドウの前面に表示されます。
# [重ねて表示] コマンド
複数のウィンドウを重ねて表示します。
# [並べて表示] コマンド
複数のウィンドウを並べて表示します。
# [アイコンの整列] コマンド
アプリケーションのメイン ウィンドウの一番下にアイコン化されているウィンドウを整列させます。
もし文書のウィンドウが開いていて、メインウィンドウの一番下の部分にかかっている場合、このウィンドウの下になっているアイコンは見えません。
# [ウィンドウ名 1, 2, ...] コマンド
現在開いている文書ウィンドウのリストが [ウィンドウ] メニューのいちばん下に表示されます。
また、現在アクティブになっている文書ウィンドウ名の横にチェックマークが表示されます。アクティブにしたい文書ウィンドウを選択してください。
# Win Help 目次
ウインドウヘルプの目次を表示します。
Windows8
以降ではサポート停止になっています。
# HTML Help 目次
HTMLヘルプを表示します。
Windows7
以降ではこのタイプのヘルプとするように仕様が変更になりました。
# HP Type Help 目次
ホームページタイプのヘルプの目次を表示します。
Win
Help(Windows7まで) から HTML Hel;p(Windows7以降) への移行は面倒な作業が必要なので、この Hhelpアプリケーションで簡単に作成できる独自のヘルプ機能を作りました。
参考にしてください。
# ホームページ
ホームページを表示します。
http://hp.vector.co.jp/authors/VA035301/
# [バージョン情報...] コマンド
バージョンや版権などについての情報を表示します。
さまざまな部分についてのヘルプ情報を表示します。
ツールバーの [状況依存のヘルプ] ボタンを選択すると、マウス ポインタの形が矢印と疑問符を組み合わせたものに変わります。
この状態で、ツールバーの他のボタンなど ウィンドウの部分をクリックすると、その部分に対応するヘルプ情報が表示されます。
この機能は Windows8 以降では使えません。
キーボード: SHIFT+F1
# [HP依存のヘルプ] コマンド
主要なコマンドについてのヘルプ情報を表示します。
ツールバーの [HP依存のヘルプ] ボタンを選択すると、マウスポインタの形が矢印と疑問符を組み合わせたものに変わります。
この状態で、ツールバーの他のボタンなどをクリックすると、その部分に対応するヘルプ情報が表示されます。
ただし、[表示]メニューと[ウィンドウ]メニューと[バージョン情報]には対応していません。
テキスト画面を左ボタンでクリックすると元のマウスポインタ(矢印)に戻ります。
Win Help の状況依存のヘルプ は Windows8 以降では使えません。
この Hhelpアプリケーションで実験的に作ってみたものです。
このコマンドを働かせるためにはページ分割したHTMLファイルをアプリケーションに添付することが必要です。
下記例の関数を参考にしてください。
BOOL CMainFrame::OnSetCursor(CWnd*
pWnd, UINT nHitTest, UINT message)
{
//カーソル形状を指定する
//IDC_ARROW
IDC_CROSS IDC_IBEAM IDC_SIZEALL
//IDC_SIZENEAW
IDC_SIZENS IDC_SIZENWSE IDC_SIZEWE
//IDC_UPPERROW
IDC_WAIT IDC_HELP
LPCTSTR
lpszCursorName;
if
( pApp->m_Cursor == CURSOR_HELP) lpszCursorName = IDC_HELP;
if
( pApp->m_Cursor != CURSOR_NON)
{
::SetCursor(
AfxGetApp()->LoadStandardCursor( lpszCursorName));
return
TRUE;
}
return
CMDIFrameWnd::OnSetCursor(pWnd, nHitTest, message);
}
void CHhelpApp::OnConthelpHp()
{
//HPヘルプコンテキスト
if
( m_Cursor == CURSOR_NON)
{
m_Cursor
= CURSOR_HELP;
}
else
{
OpenHpHelp(
"Help\\HID_CONTHELP_HP.htm");
m_Cursor
= CURSOR_NON;
}
}
void CHhelpView::OnLButtonUp(UINT
nFlags, CPoint point)
{
//文字画面をクリックすると矢印カーソルーに戻る
pApp->m_Cursor
= CURSOR_NON;
CEditView::OnLButtonUp(nFlags,
point);
}
void CHhelpDoc::OnFileClose()
{
//閉じるコマンド
if
( pApp->m_Cursor == CURSOR_HELP)
{
pApp->OpenHpHelp(
"Help\\HID_FILE_CLOSE.htm");
pApp->m_Cursor
= CURSOR_NON;
return;
}
CDocument::OnFileClose();
}
・・・・・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・・・
# タイトルバー
ウィンドウ上端のアプリケーション名や文書名が表示される部分です。
タイトルバーをドラッグして、ウィンドウを移動できます。
ダイアログ ボックスにもタイトルバーがあり、ドラッグして移動することができます。
# スクロールバー
文書ウィンドウの右端に表示されます。
スクロールバーの中のスクロールボックスは、文書中の現在の位置を示します。
マウスを使うと文書内の他の部分へスクロールすることができます。
# [サイズ変更]
マウスカーソルをウィンドウの端に合わせる)すると、マウスポインタが上下左右に矢印の付いた形
に変わります。
マウスポインタの形が変わった後にマウスの左ボタンを押して移動します。
このコマンドはウィンドウが最大表示されているときには使用できません。
# [移動]
このコマンドを選択するとマウスポインタが上下左右に矢印の付いた形
に変わります。
このコマンドはウィンドウが最大表示されているときには使用できません。
ウィンドウをアイコン化して表示します。
マウスで タイトルバーの をクリックします。
# [最大表示] コマンド
作業中のウィンドウを使用可能なスペースいっぱいに拡大します。
マウスで タイトルバーの
をクリックするか、タイトルバーをダブルクリックします。
# [閉じる]
作業中のウィンドウかダイアログ ボックスを閉じます。
コントロールメニューボックスをダブルクリックしても閉じることができます。
# [元のサイズに戻す]
最大表示、またはアイコン化されたアクティブ ウィンドウを以前のサイズおよび位置に戻します。
# ヘルプ項目がありません
ウィンドウのこの領域のヘルプ情報はありません。
# ヘルプ項目がありません
このメッセージ
ボックスに関するヘルプ情報はありません。
# H_PROLOGUE
# HHAU_TO_USE
# HFILE_HTML_ALL
# HHTML_HELP_WORKSHOP
# HHELP_HPTYPE
# HFILE_HTML_FOR
# HPIC_TO_PNG
# HFILE_CNT
# HFILE_LISTTITLE
# HMAKE_HELPCOM
# H_MAKE_HTMLHELP
# HEDIT_CNT
# HNO_TOOL
# HWIN_HELP_UPDATE
# HMENU_FILE
# HMENU_EDIT
# HMENU_HTML
# HMENU_VIEW
# HMENU_WINDOW
# NMENU_HELP
# HID_PREP_A
# HID_PREP_B
# HID_PREP_C
# HID_PREP_D
# HID_PREP_E
# HID_SEPARATE_HTML
# HID_SEPARATE_HP
# HVER_0100
# HID_FILE_NEW
K ファイル: 管理
$ [新規作成] コマンド
# HID_FILE_OPEN
K ファイル: 管理
$ [開く...] コマンド
# AFX_HIDD_FILEOPEN
# HID_FILE_CLOSE
K ファイル: 管理
$ [閉じる] コマンド
# HID_FILE_SAVE
K ファイル: 管理
$ [上書き保存] コマンド
# HID_FILE_SAVE_AS
K ファイル: 管理
$ [名前を付けて保存...] コマンド
# AFX_HIDD_FILESAVE
# HID_APP_EXIT
K 作業の終了
$ [終了] コマンド
# HID_EDIT_UNDO
# HID_EDIT_CUT
# HID_EDIT_COPY
# HID_EDIT_PASTE
# HID_VIEW_TOOLBAR
K ツールバー
$ [ツールバー] コマンド
# AFX_HIDW_TOOLBAR
K ツールバー
$ ツールバー
# HID_VIEW_STATUS_BAR
K ステータスバー
$ [ステータス バー] コマンド
# AFX_HIDW_STATUS_BAR
K ステータスバー
$ ステータスバー
# HID_WINDOW_NEW
# HID_WINDOW_CASCADE
# HID_WINDOW_TILE
# HID_WINDOW_ARRANGE
# HID_WINDOW_ALL
# HID_HELP_FINDER
# HID_HELP_HTML
# HID_HELP_HPTYPE
# HID_URL
# HID_APP_ABOUT
# HID_CONTEXT_HELP
$ [状況依存のヘルプ] コマンド
# HID_CONTHELP_HP
# HID_HT_CAPTION
# scrollbars
# HID_SC_SIZE
# HID_SC_MOVE
# HID_SC_MINIMIZE
$ [アイコン化] コマンド
# HID_SC_MAXIMIZE
# HID_SC_CLOSE
# HID_SC_RESTORE
# HID_HT_NOWHERE
# AFX_HIDP_default