私がやろうとしている:C++ Builderでアクセス違反例外を処理しますか?
try{
int * i = NULL;
*i = 3;
}catch(Exception &Err){
ShowMessage(Err.Message);
}
私はしかし、これはアクセス違反の例外をキャッチし、エラーメッセージを表示することによって、それを処理する必要があること。
しかし、私が代わりにフル1
の簡単な
アクセス違反
メッセージモジュールYYYでアクセス違反XXX得る何らかの理由で。アドレスZZZに書き込む。
BTW、ExceptObject()
ルーチンは何らかの奇妙な理由でNULLを返します。
私はここで何が欠けていますか?
これは、動作するはずの方法であるため、「アクセス仮想化」だけが表示されています。 RTLは例外データ全体をスローされるEAccessViolationオブジェクトに格納しません。 ExceptObject()に関しては、あなたが使っているC++ Builderのバージョンを言っていませんでした。 ExceptObject()とExceptAddr()は、古いバージョンのC++ではバグがあることが知られています。 –