none
Visual C++ 2012 建立Winform程序 RRS feed

  • 问题

  • 向大家请教两个问题:

    Visual C++ 2010中建立一个Winform程序,不用添加任何代码,直接调试,就可以生成一个窗口。Visual C++ 2012中是不是没有这种创建方式了?  是不是需要依次点击菜单中的新建”->”项目”->“Visual C++ CLR”->“CLR空项目来创建Winform程序?

    我按上面的步骤创建了一个CLR空项目,然后添加了一个Windows窗体,并建立了一个CPP文件,并仿照Visual C++ 2010中自动生成的代码,添加了main函数(代码如下)。点击调试按钮,程序可以无错误正常运行,但是不仅出现了窗体,而且还出现了一个类似于Dos的窗口,请问如何能取消这个Dos的窗口?

    #include "stdafx.h"
    #include "Myform.h"

    using namespace Project1;

    [STAThreadAttribute]
    int main(array<System::String ^> ^args)
    {
    // Enabling Windows XP visual effects before any controls are created
    Application::EnableVisualStyles();
    Application::SetCompatibleTextRenderingDefault(false); 

    // Create the main window and run it
    Form^ MainInterface = gcnew Form();
    Application::Run(MainInterface);
    return 0;
    }

                                                                                                谢谢。

    2012年11月20日 6:24

答案

    1. 在 2012 中创建 WinForm 必须首先选择 Clr 空项目,然后添加窗体
    2. 要不想看到 dos 窗口,那你应该是个窗口程序,需要满足两个条件
      1. 连接器要收到 /SubSystem:Windows 的选项,可以在连接器属性或者源代码中指定
      2. 入口函数应该是 int WINAPI WinMain(HINSTANCE, HINSTANCE, char*, int)
    2012年11月20日 18:00

全部回复

  • #include "stdafx.h"
    #include "Myform.h"
    
    #pragma comment(linker, "/SubSystem:Windows")
    
    using namespace Project1;
    
    ...
    
    2012年11月20日 17:38
    1. 在 2012 中创建 WinForm 必须首先选择 Clr 空项目,然后添加窗体
    2. 要不想看到 dos 窗口,那你应该是个窗口程序,需要满足两个条件
      1. 连接器要收到 /SubSystem:Windows 的选项,可以在连接器属性或者源代码中指定
      2. 入口函数应该是 int WINAPI WinMain(HINSTANCE, HINSTANCE, char*, int)
    2012年11月20日 18:00
  • 按照您提供的方法,问题已经解决了,谢谢您的帮助。
    2012年11月21日 1:46