DLL中的dllMain入口函数的使用

     在我的 动态链接文件dll的使用  和DLL中的dllMain入口函数的使用VC++生成DLL(DynamicLinkLibrary… 两篇博文基础上
测试DLL的入口函数dllMain的作用。


VC++生成DLL(DynamicLinkLibrary… 博文实例Dll2.dll的源代码Dll2.cpp 中加入
如下代码:
#include
#include

BOOL WINAPI DllMain (HANDLE hInst,
                     ULONG ul_reason_for_call,
                     LPVOID lpReserved )                     

    switch( ul_reason_for_call )
    {     
    case DLL_PROCESS_ATTACH:                   //注:句柄就是指向指针的指针
        {
            HWND hwnd = GetForegroundWindow();   //获得当前活动的窗口句柄hwnd
            HDC hdc = GetDC(hwnd);   //获得当前活动窗口的内存句柄
            static char buf[20];
            sprintf(buf,"进程调用");
            TextOut(hdc,0,0,buf,strlen(buf));  //向当前活动的窗口显示“进程调用”字符串
            ReleaseDC(hwnd,hdc);
        }
        break;           
    case DLL_THREAD_ATTACH:   
        {
            HWND hwnd = GetForegroundWindow();
            HDC hdc = GetDC(hwnd);
            static char buf[20];
            sprintf(buf,"线程调用");
            TextOut(hdc,0,0,buf,strlen(buf));
            ReleaseDC(hwnd,hdc);
        }
        break;         

你可能感兴趣的:(VC++)