我是c#的新手,我发现它与我的PHP起源完全不同,所以我可能做的完全错误。但是据我了解,这是非常准确的。基本上,我需要在窗体上单击按钮时启动一个程序(该部分可以正常运行),然后当用户关闭程序时,我需要运行一个动作,在这种情况下,我将显示一个消息框。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Diagnostics;
using System.Windows.Forms;

namespace usb
{
    class Applications
    {
        //condition variables
        public static bool CalcStatus = false;

        public static void Calc()
        {
            Process CALC;
            CALC = Process.Start("calc.exe");
            if (CALC.HasExited)
            {
                MessageBox.Show("CALC has exited");
                CalcStatus = true;
            }
        }
    }
}


该代码段是一个类的一部分,另一个类使用此函数,当它被称为calc将打开时,当calc关闭时,该框将不会与警报一起弹出。有人知道我在做什么错吗?我仍在学习,欢迎任何更多的指针:)

最佳答案

当进程退出时,可以使用Exited事件运行一些代码:

CALC.EnableRaisingEvents = true;
CALC.Exited += (sender, args) => MessageBox.Show("CALC has exited");

关于c# - 程序关闭后如何执行 Action ?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21005531/

10-13 06:13