1

我在想为什么当我创建控制台应用程序并“转换”主方法以与创建 Windows 窗体项目时自动生成的主方法相同时,控制台仍然出现在屏幕上:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Globalization;
using System.Windows.Forms;

namespace Chapter16
{
    static class Program
    {
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            Application.Run(new CultureTest());
        }
    }
}

此代码与位于 Windows 窗体应用程序的 Program.cs 中的代码相同。问题是控制台仍然出现在屏幕上,这在 windows 窗体项目中不是这种情况。这是为什么?

亲切的Regadrs PK

4

1 回答 1

5

您应该将项目属性中的目标类型设置为“Windows 应用程序”。这相当于/target:winexe编译器开关。它将改变subsystemin 二进制标头以告诉 Windows 不要打开 shell 窗口。

于 2009-04-25T10:55:11.523 回答