Função de retorno de chamada LdrDllNotification
[Essa função pode ser alterada ou removida do Windows sem aviso prévio.]
Uma função de retorno de chamada de notificação especificada com a função LdrRegisterDllNotification . O carregador chama essa função quando uma DLL é carregada pela primeira vez.
Aviso: Não é seguro para a função de retorno de chamada de notificação chamar funções em qualquer DLL.
Sintaxe
VOID CALLBACK LdrDllNotification(
_In_ ULONG NotificationReason,
_In_ PCLDR_DLL_NOTIFICATION_DATA NotificationData,
_In_opt_ PVOID Context
);
Parâmetros
-
NotificationReason [in]
-
O motivo pelo qual a função de retorno de chamada de notificação foi chamada. Esse parâmetro pode usar um dos valores a seguir.
Valor Significado - LDR_DLL_NOTIFICATION_REASON_LOADED
- 1
A DLL foi carregada. O parâmetro NotificationData aponta para uma estrutura LDR_DLL_LOADED_NOTIFICATION_DATA . - LDR_DLL_NOTIFICATION_REASON_UNLOADED
- 2
A DLL foi descarregada. O parâmetro NotificationData aponta para uma estrutura LDR_DLL_UNLOADED_NOTIFICATION_DATA . -
NotificationData [in]
-
Um ponteiro para uma união de LDR_DLL_NOTIFICATION constante que contém dados de notificação. Essa união tem a seguinte definição:
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;
A estrutura LDR_DLL_LOADED_NOTIFICATION_DATA tem a seguinte definição:
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;
A estrutura LDR_DLL_UNLOADED_NOTIFICATION_DATA tem a seguinte definição:
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;
-
Contexto [in, opcional]
-
Um ponteiro para dados de contexto para a função de retorno de chamada.
Valor retornado
Essa função de retorno de chamada não retorna um valor.
Comentários
A função de retorno de chamada de notificação é chamada antes da vinculação dinâmica ocorrer.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte |
Windows Vista [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte |
Windows Server 2008 [somente aplicativos da área de trabalho] |
Confira também