第4回 Visual Studio 2017のひな型コードを理解する:連載:簡単! Visual Studio 2017入門(4/4 ページ)
以上でひな型コード全体を全て解説したことになる。まとめとして、これまでの全ての処理の流れを、Mainメソッドから順番に追っていくことにしよう。
- アプリのエントリポイントであるMainメソッドが、Windowsシステム(厳密には.NETの実行エンジン)によって呼び出される
- 呼び出されたMainメソッドは、Form1オブジェクトを生成し、そのForm1オブジェクトを使ってメッセージループを開始するためにApplication.Runメソッドを呼び出す。これによりForm1オブジェクト、すなわちWindowsフォーム画面が実行されることになる
- Windowsフォームを初期化するために、コンストラクタのForm1メソッドが呼び出され、Form1メソッドからInitializeComponentメソッドが呼び出される(実際には、2の「Form1オブジェクト生成」のタイミングで、これらの処理が行われる)
- InitializeComponentメソッド内でForm1オブジェクト(=Windowsフォーム画面)の初期値などを設定する(実際には、2の「Form1オブジェクト生成」のタイミングで、この処理が行われる)
- Windowsフォーム画面が開かれ(第1回の「生成されたプログラムを動かす」を参照)、ユーザーがフォーム画面を操作できるようになる(実際には、2の「Application.Runメソッド呼び出し」中に、この処理が行われる)
- 実行中のプログラムの右上の[×]ボタンを押せばWindowsフォーム画面が閉じられる(実際には、2の「Application.Runメソッド呼び出し」中に、この処理が行われる)
- Form1オブジェクトのDisposeメソッドが呼ばれて、終了処理が行われる(実際には、2の「Application.Runメソッド呼び出し」中に、この処理が行われる)
- Application.Runメソッドが終了し、Mainメソッドの中の処理が全て完了するので、アプリ自体が終了する
Windowsアプリのひな型コードの解説はこれで全て終わりだが、第2回の「ソリューションエクスプローラーの内容」で説明を省略したソースファイルがいくつかある。それらのファイルは全て[ソリューション エクスプローラー]の「Properties」フォルダ内に配置されており、VS 2017のIDEでプロジェクトのプロパティを設定・変更するとそのデータ内容が自動的に書き込まれるようになっているため、開発者が手動で編集することは基本的にない(なお、VBでは「My Project」フォルダとなる)。
具体的には、以下の画面に示すファイルだ。
[Properties]フォルダ(C#)に格納されたVS 2017が取り扱うファイル群
プロジェクトのプロパティを設定したり変更したりすると、これらのファイルの内容が書き換わる。プロジェクトのプロパティは、「Properties」フォルダ(VBではソリューションエクスプローラーで[すべてのファイルを表示]をオンにした上で「My Project」フォルダ)をダブルクリックすると表示される。
例えば、この図にある「AssemblyInfo.cs」というソースファイルは、プログラムのバージョン情報に関する設定データを保持するためのものだ。詳しくは、「.NET TIPS:Visual Studio 2005でバージョン情報を設定するには?」を参照していただきたい。
また、「Resources.resx」ファイルは、アプリで使用する文字列やグラフィックなどのデータ(=「リソース」と呼ばれる)を格納するためのもの。これについては「.NET TIPS:文字列リソースを活用するには?」を参考にしてほしい。
「Settings.settings」ファイルは、アプリの挙動を決めるなどの用途に使うアプリ設定データを保存するためのものである。詳細な内容については「.NET TIPS:アプリ設定を活用するには?」を参照してほしい。
今回は、Windowsアプリのひな型コードの内容について解説した。次回は、実際のアプリ構築を例に、プログラミング作業の手順であるコードの追加・編集やデバッグについて解説する予定だ。次回もご期待いただきたい。
「連載:簡単! Visual Studio 2017入門」
Copyright© Digital Advantage Corp. All Rights Reserved.