コンソールアプリケーションでInitializatonは使用できますか?

解決


勉強中。  2003-11-22 01:11:38  No: 5725  IP: [192.*.*.*]

ただいまコンソールアプリケーションで勉強中のものです。
教えてください。
コンソールアプリケーションではInitializationおよび
Finalizationは使用できないのでしょうか?
見よう見まねで記入しても受け付けてくれません。
代わりの方法でも良いので、宜しくお願いいたします。

編集    削除
masayan  2003-11-22 01:46:57  No: 5726  IP: [192.*.*.*]

InitializationとFinalizationは、ユニットでしか使えないと思います。
コンソールアプリケーションの場合、標準ではプロジェクトソースしかないので、そこにInitializationとFinalizationを書くことはできないと思います。

新しいユニットを追加して、そこにInitializationとFinalizationを記述してはどうでしょうか?

編集    削除
Halbow  2003-11-22 02:04:17  No: 5727  IP: [192.*.*.*]

Halbow です。

initialization および finalization はユニットファイル (*.pas) の
構文です。コンソールアプリでも使用できますよ。以下をコマンドプロ
ンプトから実行すると分かります。ユニットファイルを使用しない場合は、
プロジェクトファイルでメインルーチンの begin の直後に初期化コード
を、end. の直前に終了処理コードを書けば良いです。

program Project2;

{$APPTYPE CONSOLE}

uses
  SysUtils,
  Unit1 in 'Unit1.pas';

begin
  writeln('Execute!');
end.

---------------------

unit Unit1;

interface

implementation

initialization
  writeln('initialization');
finalization
  writeln('finalization');
end.

編集    削除
勉強中。  2003-11-22 03:36:15  No: 5728  IP: [192.*.*.*]

早速の回答、ありがとうございます。

強制終了や異常終了してしまった際に必ず実行させたいので、
ユニットを使用することにします。

ありがとうございました。

編集    削除