DLL 엔트리 포인트 함수 DllMain
3648 단어 운영 체제
BOOL WINAPI DllMain(
HINSTANCE hinstDLL, // handle to DLL module
DWORD fdwReason, // reason for calling function
LPVOID lpReserved ) // reserved
{
// Perform actions based on the reason for calling.
switch( fdwReason )
{
case DLL_PROCESS_ATTACH:
// Initialize once for each new process.
// Return FALSE to fail DLL load.
break;
case DLL_THREAD_ATTACH:
// Do thread-specific initialization.
break;
case DLL_THREAD_DETACH:
// Do thread-specific cleanup.
break;
case DLL_PROCESS_DETACH:
// Perform any necessary cleanup.
break;
}
return TRUE; // Successful DLL_PROCESS_ATTACH.
} MSDN, DllMain 。 : 1、 HINSTANCE hinstDLL DLL , DLL , 。 2、 DWORD fdwReason DllMain 。 , case 。 , 。 3、 LPVOID lpReserved 。 fdwReason , , DllMain。 1、DLL_PROCESS_ATTACH DLL , DllMain, fdwReason DLL_PROCESS_ATTACH。 , , 。 , DLL, DLL , DLL_PROCESS_ATTACH DllMain。 DLL_PROCESS_ATTACH , DLL 。 DllMain , DLL_PROCESS_ATTACH 。 , 。 , DllMain FALSE, 。 , LoadLibrary NULL。 2、DLL_PROCESS_DETACH DLL , DllMain DLL_PROCESS_DETACH。 。 FreeLibrary , 0 , DLL_PROCESS_DETACH DllMain。 0, DLL 。 3、DLL_THREAD_ATTACH , <strong> </strong> DLL , DLL_THREAD_ATTACH DLL DllMain。 DLL DLL_THREAD_ATTACH , 。 , DLL_THREAD_ATTACH DllMain, , DLL_PROCESS_ATTACH DllMain 。 4、DLL_THREAD_DETACH , ExitThread, , DLL_THREAD_DETACH DLL DllMain. DLL DllMain , 。 DllMain : ,A B。 , SomeDll.dll DLL。 CreateThread ,C D。 A CreateThread C , DLL_THREAD_ATTACH SomeDll.dll DllMain, C , B CreateThread D。 , DLL_THREAD_ATTACH SomeDll.dll DllMain, D 。 , DllMain , D , C DllMain 。 C DllMain , C 。 , D, D DllMain 。 , D 。
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
독서 노트문제1: 한 파일에 10000000개의 기록이 포함되어 있으며, 각 기록의 내용은 7자리의 정수이다.기록은 중복되지 않는다.파일 내용을 읽는 프로그램이 필요하고, 이 기록을 정렬한 후 파일을 출력해야 하며, 메모리는...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.