コンソール アプリケーション
アプリケーションの作成 への移動
コンソール アプリケーションは、ターゲット プラットフォームのコンソール ウィンドウ(グラフィカル インターフェイスなし)で動作する 32 ビット プログラムです。 このアプリケーションを使用するのは、一般に必要なユーザー入力があまりなく、機能セットも限定されている場合です。 ただしコンソール アプリケーションではビジュアル要素を表示できないが、コンソール アプリケーションで RTL(ランタイム ライブラリ)のすべての型と関数を使用できます。
次のものがコードに入っているアプリケーションは、いずれも専用のコンソール ウィンドウを開きます:
{$APPTYPE CONSOLE}
目次
Delphi コンソール アプリケーションを新規作成するには:
- [ファイル|新規作成|その他...|Delphi プロジェクト]をクリックします。
- [コンソール アプリケーション]をダブルクリックします。
C++ コンソール アプリケーションを新規作成するには:
- [ファイル|新規作成|その他...|C++Builder プロジェクト]をクリックし、[コンソール アプリケーション]をダブルクリックします。[新規コンソール アプリケーション](C++)ダイアログ ボックスが開きます。
- プロジェクトのメイン モジュールに対するソースの種類(C または C++)を選択するか、[プロジェクト ソースの指定]をオンにして、
main
またはwinmain
関数を含む、作成済みのファイルを指定します。 - C++ の場合、自分のアプリケーションを表示させたい場合、[ターゲット フレームワーク] グループでアプリケーションの種類を指定します。
- C++ の場合、自分のアプリケーションを表示させたい場合、[ターゲット フレームワーク] グループでアプリケーションの種類を指定します。
- FireMonkey: FireMonkey アプリケーションを作成します。
- VCL: VCL アプリケーションを作成します。
- None: デフォルト フレームワーク
- [OK] をクリックします。
すると、IDE はソース ファイルのこのタイプのためにプロジェクト ファイルを作成し、コード エディタを表示します。
コンソール アプリケーションではすべての例外の処理が必要
コンソール アプリケーションでは、プログラムの処理範囲から外れる例外がないことを保証する必要があります。 例外が処理されない場合、プログラムが終了したとき、オペレーティング システムにより、例外情報のダイアログが表示されます。
C++ コンソール アプリケーションではすべての例外を処理する必要があります。これは、コンソール アプリケーションを実行したとき、ターゲット プラットフォームで、例外のダイアログの表示を防ぐためです。 詳細は、「C++Builder の例外処理」を参照してください。
たとえば、Delphi アプリケーションでは、次に示すような例外処理コードを追加する必要があります。
program ConsoleExceptionHandling;
{$APPTYPE CONSOLE}
uses
SysUtils;
procedure ExecuteProgram;
begin
// Program does something
raise Exception.Create('Unforeseen exception');
end;
begin
try
ExecuteProgram;
except
// Handle error condition
WriteLn('Program terminated due to an exception');
// Set ExitCode <> 0 to flag error condition (by convention)
ExitCode := 1;
end;
end.
コンソール アプリケーションの終了処理
次のいずれかの方法で、コンソール アプリケーションを終了できます。
- 終了([X])ボタンをクリックします。
Ctrl+C
を押します。Ctrl+Break
を押します。- ログ オフします。
これらのユーザー終了要求を処理するには、Windows API 関数 SetConsoleCtrlHandler の各オプションを使用します。 ユーザーの選択した内容により、アプリケーションは強制的に終了することがあります。プロセスは正常にシャットダウンできず、終了処理部分が実行されないこともあります。