当我编译CLR C ++应用程序的“发布”版本时,除了GUI外,还会弹出一个cmd窗口。我该如何解决?

时间:2018-06-24 07:13:57

标签: c++ compilation clr

这是我的主要功能。我不太确定为什么会这样(我有史以来第一个GUI应用程序,在此之前我一直做过CLI)。仅在使用Release版本进行Debug版本时,这不会发生。我正在使用Visual Studio 2017,这是Windows应用程序:

#include "MyForm.h"

using namespace System;
using namespace std;
using namespace System::Windows::Forms;
[STAThread]

int main()
{
    Application::EnableVisualStyles();
    Application::SetCompatibleTextRenderingDefault(false);
    Project::MyForm form;
    Application::Run(%form);

    return 0;
}

1 个答案:

答案 0 :(得分:1)

我的猜测是您在项目的“发布设置”中指定了“命令行应用程序”。尝试以下操作:创建一个新项目(假设您是Visual Studio),然后选择“ GUI”作为您的项目类型。然后将设置与当前项目进行比较。 Windows加载.exe时,它将查看元数据以确定它是CMD还是GUI应用程序。元数据由链接器编写。