在Visual Studio 2019 C+中构建窗口应用程序作为DLL库+;

在Visual Studio 2019 C+中构建窗口应用程序作为DLL库+;,c,winapi,C,Winapi,我需要帮助解决一个问题,因为我没有足够的经验。我在VisualStudio2019中创建了一个简单的winodws,它运行良好,但我需要将其编译为dll库,以便第三方应用程序可以从该库调用函数并绘制窗口 我还没有计划与从dll调用此函数的应用程序进行任何交互-我只想显示一个窗口 exe文件的实际代码非常简单: #include "MyForm.h" #include <Windows.h> using namespace windows2; int WIN

我需要帮助解决一个问题,因为我没有足够的经验。我在VisualStudio2019中创建了一个简单的winodws,它运行良好,但我需要将其编译为dll库,以便第三方应用程序可以从该库调用函数并绘制窗口

我还没有计划与从dll调用此函数的应用程序进行任何交互-我只想显示一个窗口

exe文件的实际代码非常简单:

#include "MyForm.h"

#include <Windows.h>

using namespace windows2;


int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) {

    Application::EnableVisualStyles();

    Application::SetCompatibleTextRenderingDefault(false);

    Application::Run(gcnew MyForm);

    return 0;
}
严重性代码说明项目文件行抑制状态 警告C4747调用托管“DllMain”:托管代码可能无法运行 在加载程序锁定下,包括DLL入口点和从 DLL入口点windows2 C:\VIsualC\windows2\windows2\MyForm.cpp 1

有人能告诉我如何把这个窗口编译成dll吗


在Visual Studio中,然后将项目->属性->配置属性->常规->配置类型从
应用程序(.exe)
更改为
动态库(.dll)
(别忘了选择相应的平台,您的项目是x64。)

BOOL APIENTRY DllMain(HMODULE hModule,
    DWORD  ul_reason_for_call,
    LPVOID lpReserved
)
{
    Application::EnableVisualStyles();
    Application::SetCompatibleTextRenderingDefault(false);
    Application::Run(gcnew MyForm);
    
    switch (ul_reason_for_call)
    {
    case DLL_PROCESS_ATTACH:
    case DLL_THREAD_ATTACH:
    case DLL_THREAD_DETACH:
    case DLL_PROCESS_DETACH:
        break;
    }
    return TRUE;
}