ReactOS 0.4.16-dev-122-g325d74c
ldrtypes.h File Reference
#include <umtypes.h>
Include dependency graph for ldrtypes.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _PEB_LDR_DATA
 
struct  _LDR_DATA_TABLE_ENTRY
 
struct  _LOAD_IMPORTS
 
struct  _LDR_RESOURCE_INFO
 
struct  _LDR_ENUM_RESOURCE_INFO
 
struct  _LDR_DLL_LOADED_NOTIFICATION_DATA
 
struct  _LDR_DLL_LOADED_NOTIFICATION_ENTRY
 
struct  _ALT_RESOURCE_MODULE
 

Macros

#define RESOURCE_TYPE_LEVEL   0
 
#define RESOURCE_NAME_LEVEL   1
 
#define RESOURCE_LANGUAGE_LEVEL   2
 
#define RESOURCE_DATA_LEVEL   3
 
#define LDRP_STATIC_LINK   0x00000002
 
#define LDRP_IMAGE_DLL   0x00000004
 
#define LDRP_SHIMENG_SUPPRESSED_ENTRY   0x00000008
 
#define LDRP_IMAGE_INTEGRITY_FORCED   0x00000020
 
#define LDRP_LOAD_IN_PROGRESS   0x00001000
 
#define LDRP_UNLOAD_IN_PROGRESS   0x00002000
 
#define LDRP_ENTRY_PROCESSED   0x00004000
 
#define LDRP_ENTRY_INSERTED   0x00008000
 
#define LDRP_CURRENT_LOAD   0x00010000
 
#define LDRP_FAILED_BUILTIN_LOAD   0x00020000
 
#define LDRP_DONT_CALL_FOR_THREADS   0x00040000
 
#define LDRP_PROCESS_ATTACH_CALLED   0x00080000
 
#define LDRP_DEBUG_SYMBOLS_LOADED   0x00100000
 
#define LDRP_IMAGE_NOT_AT_BASE   0x00200000
 
#define LDRP_COR_IMAGE   0x00400000
 
#define LDR_COR_OWNS_UNMAP   0x00800000
 
#define LDRP_SYSTEM_MAPPED   0x01000000
 
#define LDRP_IMAGE_VERIFYING   0x02000000
 
#define LDRP_DRIVER_DEPENDENT_DLL   0x04000000
 
#define LDRP_ENTRY_NATIVE   0x08000000
 
#define LDRP_REDIRECTED   0x10000000
 
#define LDRP_NON_PAGED_DEBUG_INFO   0x20000000
 
#define LDRP_MM_LOADED   0x40000000
 
#define LDRP_COMPAT_DATABASE_PROCESSED   0x80000000
 
#define LDR_IGNORE_CODE_AUTHZ_LEVEL   0x00001000
 
#define LDR_ADDREF_DLL_PIN   0x00000001
 
#define LDR_LOCK_LOADER_LOCK_FLAG_RAISE_ON_ERRORS   0x00000001
 
#define LDR_LOCK_LOADER_LOCK_FLAG_TRY_ONLY   0x00000002
 
#define LDR_UNLOCK_LOADER_LOCK_FLAG_RAISE_ON_ERRORS   0x00000001
 
#define LDR_GET_DLL_HANDLE_EX_UNCHANGED_REFCOUNT   0x00000001
 
#define LDR_GET_DLL_HANDLE_EX_PIN   0x00000002
 
#define LDR_LOCK_LOADER_LOCK_DISPOSITION_INVALID   0
 
#define LDR_LOCK_LOADER_LOCK_DISPOSITION_LOCK_ACQUIRED   1
 
#define LDR_LOCK_LOADER_LOCK_DISPOSITION_LOCK_NOT_ACQUIRED   2
 
#define IMAGE_SCN_TYPE_NOLOAD   0x00000002
 
#define LDR_IS_DATAFILE(handle)   (((ULONG_PTR)(handle)) & (ULONG_PTR)1)
 
#define LDR_IS_IMAGEMAPPING(handle)   (((ULONG_PTR)(handle)) & (ULONG_PTR)2)
 
#define LDR_IS_RESOURCE(handle)   (LDR_IS_IMAGEMAPPING(handle) || LDR_IS_DATAFILE(handle))
 

Typedefs

typedef PVOID PACTIVATION_CONTEXT
 
typedef struct _PEB_LDR_DATA PEB_LDR_DATA
 
typedef struct _PEB_LDR_DATAPPEB_LDR_DATA
 
typedef struct _LDR_DATA_TABLE_ENTRY LDR_DATA_TABLE_ENTRY
 
typedef struct _LDR_DATA_TABLE_ENTRYPLDR_DATA_TABLE_ENTRY
 
typedef struct _LOAD_IMPORTS LOAD_IMPORTS
 
typedef struct _LOAD_IMPORTSPLOAD_IMPORTS
 
typedef struct _LDR_RESOURCE_INFO LDR_RESOURCE_INFO
 
typedef struct _LDR_RESOURCE_INFOPLDR_RESOURCE_INFO
 
typedef struct _LDR_ENUM_RESOURCE_INFO LDR_ENUM_RESOURCE_INFO
 
typedef struct _LDR_ENUM_RESOURCE_INFOPLDR_ENUM_RESOURCE_INFO
 
typedef struct _LDR_DLL_LOADED_NOTIFICATION_DATA LDR_DLL_LOADED_NOTIFICATION_DATA
 
typedef struct _LDR_DLL_LOADED_NOTIFICATION_DATAPLDR_DLL_LOADED_NOTIFICATION_DATA
 
typedef VOID(NTAPIPLDR_DLL_LOADED_NOTIFICATION_CALLBACK) (_In_ BOOLEAN Type, _In_ struct _LDR_DLL_LOADED_NOTIFICATION_DATA *Data)
 
typedef struct _LDR_DLL_LOADED_NOTIFICATION_ENTRY LDR_DLL_LOADED_NOTIFICATION_ENTRY
 
typedef struct _LDR_DLL_LOADED_NOTIFICATION_ENTRYPLDR_DLL_LOADED_NOTIFICATION_ENTRY
 
typedef struct _ALT_RESOURCE_MODULE ALT_RESOURCE_MODULE
 
typedef struct _ALT_RESOURCE_MODULEPALT_RESOURCE_MODULE
 
typedef _In_opt_ PVOID Context
 
typedef _In_opt_ PVOID _Out_ BOOLEANStop
 
typedef LDR_ENUM_CALLBACK * PLDR_ENUM_CALLBACK
 
typedef _In_ PCWSTR FullDllName
 
typedef _In_ PCWSTR _Out_ PVOIDActCtx
 
typedef LDR_MANIFEST_PROBER_ROUTINE * PLDR_MANIFEST_PROBER_ROUTINE
 
typedef BOOLEAN(NTAPIPDLL_INIT_ROUTINE) (_In_ PVOID DllHandle, _In_ ULONG Reason, _In_opt_ PCONTEXT Context)
 

Functions

typedef VOID (NTAPI LDR_ENUM_CALLBACK)(_In_ PLDR_DATA_TABLE_ENTRY ModuleInformation
 
typedef NTSTATUS (NTAPI LDR_MANIFEST_PROBER_ROUTINE)(_In_ PVOID DllHandle
 

Macro Definition Documentation

◆ IMAGE_SCN_TYPE_NOLOAD

#define IMAGE_SCN_TYPE_NOLOAD   0x00000002

Definition at line 98 of file ldrtypes.h.

◆ LDR_ADDREF_DLL_PIN

#define LDR_ADDREF_DLL_PIN   0x00000001

Definition at line 71 of file ldrtypes.h.

◆ LDR_COR_OWNS_UNMAP

#define LDR_COR_OWNS_UNMAP   0x00800000

Definition at line 53 of file ldrtypes.h.

◆ LDR_GET_DLL_HANDLE_EX_PIN

#define LDR_GET_DLL_HANDLE_EX_PIN   0x00000002

Definition at line 88 of file ldrtypes.h.

◆ LDR_GET_DLL_HANDLE_EX_UNCHANGED_REFCOUNT

#define LDR_GET_DLL_HANDLE_EX_UNCHANGED_REFCOUNT   0x00000001

Definition at line 87 of file ldrtypes.h.

◆ LDR_IGNORE_CODE_AUTHZ_LEVEL

#define LDR_IGNORE_CODE_AUTHZ_LEVEL   0x00001000

Definition at line 66 of file ldrtypes.h.

◆ LDR_IS_DATAFILE

#define LDR_IS_DATAFILE (   handle)    (((ULONG_PTR)(handle)) & (ULONG_PTR)1)

Definition at line 103 of file ldrtypes.h.

◆ LDR_IS_IMAGEMAPPING

#define LDR_IS_IMAGEMAPPING (   handle)    (((ULONG_PTR)(handle)) & (ULONG_PTR)2)

Definition at line 104 of file ldrtypes.h.

◆ LDR_IS_RESOURCE

#define LDR_IS_RESOURCE (   handle)    (LDR_IS_IMAGEMAPPING(handle) || LDR_IS_DATAFILE(handle))

Definition at line 105 of file ldrtypes.h.

◆ LDR_LOCK_LOADER_LOCK_DISPOSITION_INVALID

#define LDR_LOCK_LOADER_LOCK_DISPOSITION_INVALID   0

Definition at line 91 of file ldrtypes.h.

◆ LDR_LOCK_LOADER_LOCK_DISPOSITION_LOCK_ACQUIRED

#define LDR_LOCK_LOADER_LOCK_DISPOSITION_LOCK_ACQUIRED   1

Definition at line 92 of file ldrtypes.h.

◆ LDR_LOCK_LOADER_LOCK_DISPOSITION_LOCK_NOT_ACQUIRED

#define LDR_LOCK_LOADER_LOCK_DISPOSITION_LOCK_NOT_ACQUIRED   2

Definition at line 93 of file ldrtypes.h.

◆ LDR_LOCK_LOADER_LOCK_FLAG_RAISE_ON_ERRORS

#define LDR_LOCK_LOADER_LOCK_FLAG_RAISE_ON_ERRORS   0x00000001

Definition at line 76 of file ldrtypes.h.

◆ LDR_LOCK_LOADER_LOCK_FLAG_TRY_ONLY

#define LDR_LOCK_LOADER_LOCK_FLAG_TRY_ONLY   0x00000002

Definition at line 77 of file ldrtypes.h.

◆ LDR_UNLOCK_LOADER_LOCK_FLAG_RAISE_ON_ERRORS

#define LDR_UNLOCK_LOADER_LOCK_FLAG_RAISE_ON_ERRORS   0x00000001

Definition at line 82 of file ldrtypes.h.

◆ LDRP_COMPAT_DATABASE_PROCESSED

#define LDRP_COMPAT_DATABASE_PROCESSED   0x80000000

Definition at line 61 of file ldrtypes.h.

◆ LDRP_COR_IMAGE

#define LDRP_COR_IMAGE   0x00400000

Definition at line 52 of file ldrtypes.h.

◆ LDRP_CURRENT_LOAD

#define LDRP_CURRENT_LOAD   0x00010000

Definition at line 46 of file ldrtypes.h.

◆ LDRP_DEBUG_SYMBOLS_LOADED

#define LDRP_DEBUG_SYMBOLS_LOADED   0x00100000

Definition at line 50 of file ldrtypes.h.

◆ LDRP_DONT_CALL_FOR_THREADS

#define LDRP_DONT_CALL_FOR_THREADS   0x00040000

Definition at line 48 of file ldrtypes.h.

◆ LDRP_DRIVER_DEPENDENT_DLL

#define LDRP_DRIVER_DEPENDENT_DLL   0x04000000

Definition at line 56 of file ldrtypes.h.

◆ LDRP_ENTRY_INSERTED

#define LDRP_ENTRY_INSERTED   0x00008000

Definition at line 45 of file ldrtypes.h.

◆ LDRP_ENTRY_NATIVE

#define LDRP_ENTRY_NATIVE   0x08000000

Definition at line 57 of file ldrtypes.h.

◆ LDRP_ENTRY_PROCESSED

#define LDRP_ENTRY_PROCESSED   0x00004000

Definition at line 44 of file ldrtypes.h.

◆ LDRP_FAILED_BUILTIN_LOAD

#define LDRP_FAILED_BUILTIN_LOAD   0x00020000

Definition at line 47 of file ldrtypes.h.

◆ LDRP_IMAGE_DLL

#define LDRP_IMAGE_DLL   0x00000004

Definition at line 39 of file ldrtypes.h.

◆ LDRP_IMAGE_INTEGRITY_FORCED

#define LDRP_IMAGE_INTEGRITY_FORCED   0x00000020

Definition at line 41 of file ldrtypes.h.

◆ LDRP_IMAGE_NOT_AT_BASE

#define LDRP_IMAGE_NOT_AT_BASE   0x00200000

Definition at line 51 of file ldrtypes.h.

◆ LDRP_IMAGE_VERIFYING

#define LDRP_IMAGE_VERIFYING   0x02000000

Definition at line 55 of file ldrtypes.h.

◆ LDRP_LOAD_IN_PROGRESS

#define LDRP_LOAD_IN_PROGRESS   0x00001000

Definition at line 42 of file ldrtypes.h.

◆ LDRP_MM_LOADED

#define LDRP_MM_LOADED   0x40000000

Definition at line 60 of file ldrtypes.h.

◆ LDRP_NON_PAGED_DEBUG_INFO

#define LDRP_NON_PAGED_DEBUG_INFO   0x20000000

Definition at line 59 of file ldrtypes.h.

◆ LDRP_PROCESS_ATTACH_CALLED

#define LDRP_PROCESS_ATTACH_CALLED   0x00080000

Definition at line 49 of file ldrtypes.h.

◆ LDRP_REDIRECTED

#define LDRP_REDIRECTED   0x10000000

Definition at line 58 of file ldrtypes.h.

◆ LDRP_SHIMENG_SUPPRESSED_ENTRY

#define LDRP_SHIMENG_SUPPRESSED_ENTRY   0x00000008

Definition at line 40 of file ldrtypes.h.

◆ LDRP_STATIC_LINK

#define LDRP_STATIC_LINK   0x00000002

Definition at line 38 of file ldrtypes.h.

◆ LDRP_SYSTEM_MAPPED

#define LDRP_SYSTEM_MAPPED   0x01000000

Definition at line 54 of file ldrtypes.h.

◆ LDRP_UNLOAD_IN_PROGRESS

#define LDRP_UNLOAD_IN_PROGRESS   0x00002000

Definition at line 43 of file ldrtypes.h.

◆ RESOURCE_DATA_LEVEL

#define RESOURCE_DATA_LEVEL   3

Definition at line 33 of file ldrtypes.h.

◆ RESOURCE_LANGUAGE_LEVEL

#define RESOURCE_LANGUAGE_LEVEL   2

Definition at line 32 of file ldrtypes.h.

◆ RESOURCE_NAME_LEVEL

#define RESOURCE_NAME_LEVEL   1

Definition at line 31 of file ldrtypes.h.

◆ RESOURCE_TYPE_LEVEL

#define RESOURCE_TYPE_LEVEL   0

Definition at line 30 of file ldrtypes.h.

Typedef Documentation

◆ ActCtx

Definition at line 247 of file ldrtypes.h.

◆ ALT_RESOURCE_MODULE

◆ Context

Definition at line 241 of file ldrtypes.h.

◆ FullDllName

Definition at line 247 of file ldrtypes.h.

◆ LDR_DATA_TABLE_ENTRY

◆ LDR_DLL_LOADED_NOTIFICATION_DATA

◆ LDR_DLL_LOADED_NOTIFICATION_ENTRY

◆ LDR_ENUM_RESOURCE_INFO

◆ LDR_RESOURCE_INFO

◆ LOAD_IMPORTS

◆ PACTIVATION_CONTEXT

Definition at line 110 of file ldrtypes.h.

◆ PALT_RESOURCE_MODULE

◆ PDLL_INIT_ROUTINE

typedef BOOLEAN(NTAPI * PDLL_INIT_ROUTINE) (_In_ PVOID DllHandle, _In_ ULONG Reason, _In_opt_ PCONTEXT Context)

Definition at line 253 of file ldrtypes.h.

◆ PEB_LDR_DATA

◆ PLDR_DATA_TABLE_ENTRY

◆ PLDR_DLL_LOADED_NOTIFICATION_CALLBACK

typedef VOID(NTAPI * PLDR_DLL_LOADED_NOTIFICATION_CALLBACK) (_In_ BOOLEAN Type, _In_ struct _LDR_DLL_LOADED_NOTIFICATION_DATA *Data)

Definition at line 208 of file ldrtypes.h.

◆ PLDR_DLL_LOADED_NOTIFICATION_DATA

◆ PLDR_DLL_LOADED_NOTIFICATION_ENTRY

◆ PLDR_ENUM_CALLBACK

typedef LDR_ENUM_CALLBACK* PLDR_ENUM_CALLBACK

Definition at line 242 of file ldrtypes.h.

◆ PLDR_ENUM_RESOURCE_INFO

◆ PLDR_MANIFEST_PROBER_ROUTINE

typedef LDR_MANIFEST_PROBER_ROUTINE* PLDR_MANIFEST_PROBER_ROUTINE

Definition at line 248 of file ldrtypes.h.

◆ PLDR_RESOURCE_INFO

◆ PLOAD_IMPORTS

◆ PPEB_LDR_DATA

◆ Stop

Definition at line 241 of file ldrtypes.h.

Function Documentation

◆ NTSTATUS()

typedef NTSTATUS ( NTAPI  LDR_MANIFEST_PROBER_ROUTINE)

◆ VOID()

typedef VOID ( NTAPI  LDR_ENUM_CALLBACK)