Delphi2005.NETにおいての質問です。
TFileStreamの派生クラスを独自で作成したのですが、コンストラクタ内でのエラーの捕捉でコンパイルエラーとなってしまいます。エラー内容は「'Self'は初期化されていない可能性があります。」なのですが、このエラーが出る理由が良く分かりません。どなたかご教授願います。
以下がコードです。
//------------------------------------------------------------------
constructor TFileStream3.Create(const FileName: string; Mode: Word);
begin
try
inherited Create(FileName, Mode);
except
on E: Exception do begin //←この記述でエラーとなっている。
(省略)
end;
end;
end;
-------------------------------------------------------------------//
違ってたらすいません。
.NETはあまり詳しくないです。
ただ、E: Exceptionの記述には手続きに引数にe: System.EventArgsが
必要だったような。
しかるに、この場合は On E: Exception ・・・は記述できなかったよ
うな・・・。
取り合えずExceptionをHelpで。
Syakeさん、ご返事ありがとうございます。
EventArgsについて、調べてみたのですが、ちょっと今回の状況の解決に
結びつける事が出来ませんでした(^^;
色々自分でも調べてみたのですが、なんとも解決しがたい内容のような
気がしてきて、仕方がないので、ExceptObjects関数で無理やりエラーの
取得を行ってみました。
これで良いとは思えないのですが、なんとかコンパイルが通り、動作も
出来たので、今はこれでいこうと思います。
結局正確な原因が分からないままですが、一応自己解決としておきます。
Syakeさん本当にありがとうございました。
ツイート | ![]() |