zoukankan      html  css  js  c++  java
  • Dll 入口函数

    代码

    BOOL WINAPI DllMain ( HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpReserved )
    {
        // 分别处理各种通知
        switch( fdwReason ) 
        { 
        
    case DLL_PROCESS_ATTACH:
                
    // 为新进程初始化,只能进行1次
                
    // 如果加载失败则返回FALSE
                MessageBox(0, TEXT("DLL_PROCESS_ATTACH"), TEXT(""), MB_OK);
                
    break;
            
    case DLL_THREAD_ATTACH:
           ::MessageBox(
    0, TEXT("DLL_THREAD_ATTACH"), TEXT(""), MB_OK);
                
    // 执行线程初始化操作
                break;
            
    case DLL_THREAD_DETACH:
           ::MessageBox(
    0, TEXT("DLL_THREAD_DETACH"), TEXT(""), MB_OK);
                
    // 执行线程清理操作
                break;
            
    case DLL_PROCESS_DETACH:
                
    // 执行清理操作
           ::MessageBox(0, TEXT("DLL_PROCESS_DETACH"), TEXT(""), MB_OK);
               
    break;
        }
        
    return TRUE;
    }

    俩个测试代码

    DWORD WINAPI MyThreadFunc(LPVOID p)
    {
        
    return 0;
    }


    void CDllMainDlg::OnBnClickedButton1()
    {
        
    // TODO: 在此添加控件通知处理程序代码
        HMODULE h;
        h 
    = LoadLibrary(TEXT("DLLSample.dll"));

        DWORD ThreadId;
        CloseHandle(CreateThread(NULL, 
    0&MyThreadFunc, NULL, 0&ThreadId));
        
    //FreeLibrary(h);
    }

    void CDllMainDlg::OnBnClickedButton2()
    {
        
    // TODO: 在此添加控件通知处理程序代码
        DWORD ThreadId;
        CloseHandle(CreateThread(NULL, 
    0&MyThreadFunc, NULL, 0&ThreadId));
    }

     

    DLL_PROCESS_ATTACH 进程第一次加载DLL时会触发

    DLL_PROCESS_DETACH   1  进程已经加载DLL 2 进程卸载DLL(包括进程关闭) 3 非使用TerminateProcess 函数关闭进程

    DLL_THREAD_DETACH   1 进程已经加载DLL 2 创建新线程

    DLL_THREAD_DETACH   1  进程已经加载DLL 2 ExitThread撤消线程 3 非使用TerminateThread函数关闭进程

    本来DELPHI也可以这样使用的,但是一直没找到我想到的结果

  • 相关阅读:
    spring 定时任务
    maven出现(请使用source 5 或者更高版本以启用XX)问题解决
    eclipse启动tomcat出现内存溢出错误 java.lang.OutOfMemoryError: PermGen space
    开源 免费 java CMS FreeCMS标签 linkClass .
    相对你们说的一些话
    就业形势如此的严峻,你为何不努力?
    使用C#操作XML文件
    优秀学生专栏——董超
    想对你们每个人说的话
    班级第一次问卷调查
  • 原文地址:https://www.cnblogs.com/chengxin1982/p/1747748.html
Copyright © 2011-2022 走看看