// // ****************************************************************** // // /\ /| @File dllmain.cc // // \ V/ @Brief // // | "") @Author lijinwen, ghz005@uni-trend.com.cn // // / | @Creation 2024-05-16 // // / \\ @Modified 2024-06-24 // // *(__\_\ // // ****************************************************************** #include //核心的入口函数,动态链接库入口函数 BOOL APIENTRY DllMain(HMODULE hModule, //APIENTRY可以换成WINAPI、__stdcall和CALLBACK,是一种调用约定 const DWORD ul_reason_for_call, LPVOID lpReserved ) //hModule:DLL模块的句柄 ul_reason_for_call:DLL模块被调用的原因 lpReserved:保留参数,没有意义,windows不想让我们知道的参数 { switch (ul_reason_for_call) { case DLL_PROCESS_ATTACH: //当DLL被进程加载时DLLMain被调用 break; case DLL_THREAD_ATTACH: //有线程被创建时,DLLmain被调用 break; case DLL_THREAD_DETACH: //有线程结束时,DLLmain被调用 break; case DLL_PROCESS_DETACH: //当DLL被进程卸载时,DLLmain被调用 break; default: break; } return TRUE; }