これまでに、ウィンドウ内に存在するモノをEvaと呼び、その存在と動作を記述するスクリプト言語をA言語と呼ぼうという話までしました。ということは、それを開くコードが必要です。まず、ファイルメニューに「開く」コマンドを追加します。
ちなみに、ここの設定は次のようにします。
メニューのコマンドを処理するには次のようにします。
ここでIDM_OPENなんか知らないよというエラーが表示されますが、これはVisual C++のバグだと思います。ビルドすると正常に作成されますが、うっとうしいようであれば、resource.hを読み込んで#define IDM_OPENの行をコピペすれば消えるので、また消しておきます。
ともかく、メニューが正常に動くことを確認するためにメッセージボックスを表示します。次のようになります。
それでは、ファイル読み込みの実体を作りこんでいきます。
Windowsに標準で用意されている機能を使います。ヘッダーに次のようなインクルードを入れないとエラーが出ます。
それでは処理の中身です。まずファイル名を取得する部分です。
ファイル名の取得は次のような感じです。
中身を読みだす部分は次のようになります。文字コードがUTF16LTのBOM付ですので、最初のワードはBOM=Byte Order MarkerであるFFFEとなっていますので、読み飛ばします。
ここでは読みだした中身をタイトルバーに表示します。右側はメモ帳です。ファイルを保存するときに文字コードをUTF16LEにします。
このあとは、読みだしたA言語のスクリプトをコンパイルして実行するということになります。
以下、工事中です。