The entry point function DllMain() is the main callback interface for achieving this mechanism. We have to look into the prototype and description of arguments of DllMain()
Prototype:
BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved);Return value: 0 for success, non zero for error.
APIENTRY tells the compiler that it is an external/exported function.
hModule - This is the instance handle of the Loaded DLL.
ul_reason_for_call - reason for calling this DllMain() from Win32 subsystem
lpReserved - reserved variable.
ul_reason_for_call can have the following values
- DLL_PROCESS_ATTACH, value 1
- DLL_THREAD_ATTACH, value 2
- DLL_THREAD_DETACH, value 3
- DLL_PROCESS_DETACH, value 0
Also ul_reason_for_call = DLL_THREAD_DETACH when a thread terminates from the process.
About our authors: Team EQA
You have viewed 1 page out of 27. Your DLL learning is 0.00% complete. Login to check your learning progress.