如果你使用Visual Studio创建MFC DLL项目时没有自动生成dllmain.cpp文件,你可以手动创建并重写DllMain函数。以下是一些步骤:

  1. 在你的MFC DLL项目中创建一个新的源文件,命名为dllmain.cpp
  2. dllmain.cpp文件中,添加以下代码来定义DllMain函数:
#include <afxwin.h>

BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved)
{
    switch (ul_reason_for_call)
    {
    case DLL_PROCESS_ATTACH:
        // DLL加载时执行的代码
        break;
    case DLL_THREAD_ATTACH:
        // 线程创建时执行的代码
        break;
    case DLL_THREAD_DETACH:
        // 线程结束时执行的代码
        break;
    case DLL_PROCESS_DETACH:
        // DLL卸载时执行的代码
        break;
    }
    return TRUE;
}
  1. DllMain函数中的不同ul_reason_for_call情况下,你可以编写相应的代码来执行特定的操作。例如,在DLL_PROCESS_ATTACH情况下,你可以初始化MFC框架,创建全局对象等。

注意:在dllmain.cpp文件中,你需要包含afxwin.h头文件,以便使用MFC的相关功能。

  1. 在项目属性中,确保将dllmain.cpp添加到编译器的源文件列表中。

完成上述步骤后,你就可以在DllMain函数中编写自定义的初始化和清理代码,以满足你的需求。

共享MFC dll 没有自动生成 dllmain 如何重写

原文地址: https://www.cveoy.top/t/topic/hQYd 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录