Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/312.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
c代码中的c#GUI问题_C# - Fatal编程技术网

c代码中的c#GUI问题

c代码中的c#GUI问题,c#,C#,我想禁用我的exe的GUI。我可以按程序做吗?有没有办法禁用gui。user32.dll是否实现了这一点?有人能给我举个很短的例子吗?Thx为什么要这样做?您最好创建一个在后台运行的服务应用程序,当然没有gui 更新: 这是解决方案,我的朋友:在您的启动代码(Program.cs,Main方法)中创建主应用程序窗口(在Windows.Forms和WPF中)。在这里,您可以添加代码以绕过任何应用程序窗口的创建,可能需要在命令行上检查参数 如果您的应用程序是从windows服务使用的,您可以测试,以

我想禁用我的exe的GUI。我可以按程序做吗?有没有办法禁用gui。user32.dll是否实现了这一点?有人能给我举个很短的例子吗?Thx

为什么要这样做?您最好创建一个在后台运行的服务应用程序,当然没有gui

更新

这是解决方案,我的朋友:

在您的启动代码(
Program.cs
Main
方法)中创建主应用程序窗口(在Windows.Forms和WPF中)。在这里,您可以添加代码以绕过任何应用程序窗口的创建,可能需要在命令行上检查参数

如果您的应用程序是从windows服务使用的,您可以测试,以查看是否有用户在监视您。我不知道如果你的应用程序是从一个服务调用的(即:一个服务执行你的应用程序),它会返回什么,但是添加一个命令行参数很容易

    [STAThread]
    static void Main() {
        // Test if any argument == "/batchmode" using upper or lowercase
        if (Environment.GetCommandLineArgs().Any(a => string.Equals(a, "/batchmode", StringComparison.InvariantCultureIgnoreCase)) {
            // Batch mode
        } else {
            // Interactive mode
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1());
        }
    }

注意:这不会将应用程序转换为控制台/命令行应用程序。

禁用是什么意思?不显示窗口?您使用的是Windows窗体还是WPF?我在Windows servicewell中工作。如果我有一个带有GUI的exe,如何运行它而不使用Windows服务显示它的GUI?你能给我举几个例子吗Gens@elisa:创建新的Windows服务项目可能更简单,它将为您提供所需的锅炉铭牌代码。将现有代码复制到新项目中,或将服务代码从新项目复制到现有项目中。我有一个要从windows服务运行的exe。问题是exe有一个gui界面。有没有办法在后台运行它?我不想在桌面上看到来自exe的gui。