SysInit.dliNotification

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

Delphi

dliNotification = (
dliStartProcessing,            { used to bypass or note helper only     }
dliNoteStartProcessing = dliStartProcessing,
dliNotePreLoadLibrary,         { called just before LoadLibrary, can    }
{  override w/ new HMODULE return val    }
dliNotePreGetProcAddress,      { called just before GetProcAddress, can }
{  override w/ new Proc address return   }
{  value                                 }
dliFailLoadLibrary,            { failed to load library, fix it by      }
{  returning a valid HMODULE             }
dliFailGetProcAddress,         { failed to get proc address, fix it by  }
{  returning a valid Proc address        }
dliNoteEndProcessing           { called after all processing is done,   }
{  no bypass possible at this point      }
{  except by raise, or
RaiseException.                       }
);

プロパティ

種類 可視性 ソース ユニット
enum public SysInit.pas SysInit SysInit

説明

遅延ロード フック プロシージャが呼び出される通知メッセージを列挙したものです。

dliNotification 型の変数には、遅延ロード フック プロシージャが呼び出されるメッセージが格納されます(SetDliNotifyHook2 または SetDliFailureHook2 のいずれか)。

登録されているフックが遅延ロード ヘルパで呼び出される場合を以下の表に一覧します。

'dliNotify' パラメータの値 説明

dliNoteStartProcessing

遅延ロード セッションが開始された際に、遅延ロード通知フックが送信されます。遅延ロードされる外部 プロシージャが含まれているライブラリが処理される前に呼び出されます。 ヘルパのバイパスまたは通知にのみ使用されます。

dliNotePreLoadLibrary

LoadLibrary が呼び出される前に送信され、新しい HMODULE が返されます。遅延ロードされる外部プロシージャが含まれているライブラリがロードされる前に呼び出されます。 HMODULE 型の新しい戻り値でオーバーライドできます。

dliNotePreGetProcAddress

GetProcAddress 前に送信され、新しいプロシージャ アドレスが必要に応じて返されます。遅延ロードされるプロシージャのアドレスが見つかる前に呼び出されます。 HMODULE 型の新しい戻り値でオーバーライドできます。

dliNoteEndProcessing

遅延ロードの処理がすべて完了した際に、遅延ロード通知フックが送信されます。 raise または RaiseException 以外にはバイパスできません。

dliFailLoadLibrary

LoadLibrary が失敗した際に、遅延ロード失敗フックを送信します。これにより、別の有効な HMODULE ハンドルを指定することができます。

dliFailGetProcAddress

GetProcAddress が失敗した際に、遅延ロード失敗フックを送信します。これにより、プロシージャのアドレスを、有効なプロシージャのアドレスと置換できます。


関連項目



コード例