System.Win.ComObj.TComObject.SafeCallException

提供: RAD Studio API Documentation
移動先: 案内検索

Delphi

function SafeCallException(ExceptObject: TObject;
ExceptAddr: Pointer): HResult; override;

C++

virtual HRESULT __fastcall SafeCallException(System::TObject* ExceptObject, void * ExceptAddr);

プロパティ

種類 可視性 ソース ユニット
function public
System.Win.ComObj.pas
System.Win.ComObj.hpp
System.Win.ComObj TComObject

説明

OLE 例外を処理します。

SafeCallException は,例外が発生してその外へ制御が移るのを防ぎます。また,発生した例外はすべてメソッド内で処理する必要があります。

SafeCall メソッドを実装すると,黙示的な例外ブロックにそのメソッドのコードを記述しても例外は発生しません。

メモ:  SafeCallException はグローバルルーチンの HandleSafeCallException を呼び出します。HandleSafeCallException はこの動作の標準的な処理方法を提供します。この関数は OLE 例外処理をサポートする(ISupportErrorInfo インターフェースを実装する)CoClass の各メソッドに影響を与えます。これらの CoClass メソッドが SafeCall 呼び出し規約を使用する場合,それらは HRESULT を返すように変更されます。手続きは HRESULT を返し,関数はそれらの通常の結果の値を最後の(出力)パラメータとして渡して,かわりに HRESULT を返します。メソッドは例外ブロックに封入され,その後 HRESULT が返されて,ISupportErrorInfo の処理が正しく機能するように環境設定されます。