谁调用DllMain
来源:互联网 发布:淘宝联盟的优惠券在哪 编辑:程序博客网 时间:2024/06/08 08:00
staticBOOL __cdecl__DllMainCRTStartup( HANDLE hDllHandle, DWORD dwReason, LPVOID lpreserved );BOOL WINAPI_DllMainCRTStartup( HANDLE hDllHandle, DWORD dwReason, LPVOID lpreserved ){ if (dwReason == DLL_PROCESS_ATTACH) { /* * The /GS security cookie must be initialized before any exception * handling targetting the current image is registered. No function * using exception handling can be called in the current image until * after __security_init_cookie has been called. */ __security_init_cookie(); } return __DllMainCRTStartup(hDllHandle, dwReason, lpreserved);}__declspec(noinline)BOOL __cdecl__DllMainCRTStartup( HANDLE hDllHandle, DWORD dwReason, LPVOID lpreserved ){ BOOL retcode = TRUE; __try { __native_dllmain_reason = dwReason; __try{ /* * If this is a process detach notification, check that there has * been a prior process attach notification. */ if ( (dwReason == DLL_PROCESS_DETACH) && (__proc_attached == 0) ) { retcode = FALSE; __leave; } if ( dwReason == DLL_PROCESS_ATTACH || dwReason == DLL_THREAD_ATTACH ) { if ( _pRawDllMain ) retcode = (*_pRawDllMain)(hDllHandle, dwReason, lpreserved); if ( retcode ) retcode = _CRT_INIT(hDllHandle, dwReason, lpreserved); if ( !retcode ) __leave; } retcode = DllMain(hDllHandle, dwReason, lpreserved); if ( (dwReason == DLL_PROCESS_ATTACH) && !retcode ) { /* * The user's DllMain routine returned failure. Unwind the init. */ DllMain(hDllHandle, DLL_PROCESS_DETACH, lpreserved); _CRT_INIT(hDllHandle, DLL_PROCESS_DETACH, lpreserved); if ( _pRawDllMain ) (*_pRawDllMain)(hDllHandle, DLL_PROCESS_DETACH, lpreserved); } if ( (dwReason == DLL_PROCESS_DETACH) || (dwReason == DLL_THREAD_DETACH) ) { if ( _CRT_INIT(hDllHandle, dwReason, lpreserved) == FALSE ) { retcode = FALSE ; } if ( retcode && _pRawDllMain ) { retcode = (*_pRawDllMain)(hDllHandle, dwReason, lpreserved); } } } __except ( __CppXcptFilter(GetExceptionCode(), GetExceptionInformation()) ) { retcode = FALSE; } } __finally { __native_dllmain_reason = __NO_REASON; } return retcode ;}
0 0
- 谁调用DllMain
- 何时调用DllMain
- dllmain不被调用
- DllMain
- dllmain
- dllMain
- DllMain
- dllmain
- dllmain
- DllMain
- dllmain
- dll的基本知识和调用方式以及dllmain
- DllMain中不当操作导致死锁问题的分析--进程对DllMain函数的调用规律的研究和分析
- DllMain中不当操作导致死锁问题的分析--进程对DllMain函数的调用规律的研究和分析
- [转]为什么在DllMain里不能调用LoadLibrary和FreeLibrary函数?
- 进程对DllMain函数的调用规律的研究和分析
- DllMain函数
- DllMain函数
- Linear Algebra - Lesson 9. 线性相关性, 基, 维数
- 输出金字塔结构的java代码
- C++构造函数中抛出的异常
- JavaSE 第一阶段总结for循环嵌套
- Tensorflow API 学习(3)-tf.slice()
- 谁调用DllMain
- mysql数据备份
- 产品经理需要掌握的十大知识模块
- python和java的区别(python内存管理)
- ssm框架利用timer类创建定时任务
- Activity 全屏,沉浸式模式这一篇就够了
- Difference Between FTP and TFTP
- 关于 mac 下轻松 反编译安卓apk
- Swift3.0 代理传值,属性传值