次の方法で共有


LdrDllNotification コールバック関数

[この関数は、今後の通知なしに Windows から変更または削除される場合があります。]

LdrRegisterDllNotification 関数で指定された通知コールバック関数。 ローダーは、DLL が最初に読み込まれるときにこの関数を呼び出します。

警告

通知コールバックがそれ以外の他のモジュールで関数を呼び出すのは安全ではありません。

構文

VOID CALLBACK LdrDllNotification(
  _In_     ULONG                       NotificationReason,
  _In_     PCLDR_DLL_NOTIFICATION_DATA NotificationData,
  _In_opt_ PVOID                       Context
);

パラメーター

NotificationReason [in]

通知コールバック関数が呼び出された理由。 このパラメーターには、次のいずれかの値を指定できます。

価値 意味
LDR_DLL_NOTIFICATION_REASON_LOADED
1
DLL が読み込まれました。 NotificationData パラメーターは、LDR_DLL_LOADED_NOTIFICATION_DATA 構造体を指します。
LDR_DLL_NOTIFICATION_REASON_UNLOADED
2
DLL がアンロードされました。 NotificationData パラメーターは、LDR_DLL_UNLOADED_NOTIFICATION_DATA 構造体を指します。

 

NotificationData [in]

通知データを含む定数 LDR_DLL_NOTIFICATION 共用体へのポインター。 この共用体の定義は次のとおりです。

typedef union _LDR_DLL_NOTIFICATION_DATA {
    LDR_DLL_LOADED_NOTIFICATION_DATA Loaded;
    LDR_DLL_UNLOADED_NOTIFICATION_DATA Unloaded;
} LDR_DLL_NOTIFICATION_DATA, *PLDR_DLL_NOTIFICATION_DATA;

LDR_DLL_LOADED_NOTIFICATION_DATA 構造体には、次の定義があります。

typedef struct _LDR_DLL_LOADED_NOTIFICATION_DATA {
    ULONG Flags;                    //Reserved.
    PCUNICODE_STRING FullDllName;   //The full path name of the DLL module.
    PCUNICODE_STRING BaseDllName;   //The base file name of the DLL module.
    PVOID DllBase;                  //A pointer to the base address for the DLL in memory.
    ULONG SizeOfImage;              //The size of the DLL image, in bytes.
} LDR_DLL_LOADED_NOTIFICATION_DATA, *PLDR_DLL_LOADED_NOTIFICATION_DATA;

LDR_DLL_UNLOADED_NOTIFICATION_DATA 構造体には、次の定義があります。

typedef struct _LDR_DLL_UNLOADED_NOTIFICATION_DATA {
    ULONG Flags;                    //Reserved.
    PCUNICODE_STRING FullDllName;   //The full path name of the DLL module.
    PCUNICODE_STRING BaseDllName;   //The base file name of the DLL module.
    PVOID DllBase;                  //A pointer to the base address for the DLL in memory.
    ULONG SizeOfImage;              //The size of the DLL image, in bytes.
} LDR_DLL_UNLOADED_NOTIFICATION_DATA, *PLDR_DLL_UNLOADED_NOTIFICATION_DATA;

コンテキスト [入力、省略可能]

コールバック関数のコンテキスト データへのポインター。

戻り値

このコールバック関数は値を返しません。

備考

動的リンクが行われる前に、通知コールバック関数が呼び出されます。

必要条件

要件 価値
サポートされる最小クライアント
Windows Vista [デスクトップ アプリのみ]
サポートされている最小サーバー
Windows Server 2008 [デスクトップ アプリのみ]

関連項目

LdrRegisterDllNotification の

LdrUnregisterDllNotification の