Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/27.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# 单击MessageBox后关闭C控制台应用程序_C#_Console Application_Messagebox - Fatal编程技术网

C# 单击MessageBox后关闭C控制台应用程序

C# 单击MessageBox后关闭C控制台应用程序,c#,console-application,messagebox,C#,Console Application,Messagebox,我仍然在学习C提供的所有很酷的技巧。我有一个messagebox警报,在计时器过期后弹出。我想知道,在用户单击messagebox上的OK按钮后,是否有可能让console应用程序自行终止。如果出现任何情况,控制台应用程序将自动最小化到任务栏 提前感谢。试一试: // Terminates this process and gives the underlying operating system the specified exit code. Environment.Exit() 使用环境

我仍然在学习C提供的所有很酷的技巧。我有一个messagebox警报,在计时器过期后弹出。我想知道,在用户单击messagebox上的OK按钮后,是否有可能让console应用程序自行终止。如果出现任何情况,控制台应用程序将自动最小化到任务栏

提前感谢。

试一试:

// Terminates this process and gives the underlying operating system the specified exit code.
Environment.Exit()
使用环境。退出


这就是我会做的

将messagebox代码包装到if语句中

    if (MessageBox.Show("error", "error", MessageBoxButtons.OK, MessageBoxIcon.Error) == DialogResult.OK)
    {
        System.Diagnostics.Process.GetProcessesByName("YOURPROCESSNAME.EXE")[0].Kill();
    }
这里没有错误处理,我认为您的控制台作为一个进程运行。如果使用控制台在GetProcessByName中运行的进程的名称,则可以使用此方法将其关闭


要公然终止你的应用程序停止进程,你也可以使用Environment.Exit0而不是process.kill。

我说了一点没有意义的话,如果你的消息框有更多的按钮,if语句会更有效:DThank you。我有一种感觉,那很简单。我很少使用控制台应用程序。我很感激你的快速回答。完美无瑕。我很欣赏这个快速的答案。工作得很好。