当前有一个程序可以打开另一个程序。如果程序关闭,我需要执行一个操作。我对C#很新,所以可以使用一些帮助让我指出正确的方向。如何监视其他.exe文件并在其关闭时执行操作
编辑:所以我能够得到当前窗体打开外部程序。这个表单然后需要关闭,另一个表单需要有一个函数来执行一个动作,如果loader.exe关闭。这是我的第一种形式。如何编写其他表单以了解此程序是否已结束。
public static class Program
{
public static bool OpenManager { get; set; }
public static int DeskNumber { get; set; }
/// The main entry point for the application.
[STAThread]
static void Main(string[] arguments)
{
/// Do not move this!
OpenManager = false;
MYvariable = 0;
/// ----------------
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Loader());
if (OpenManager)
{
if (MYvariable == 1)
{
System.Diagnostics.Process startProgram = System.Diagnostics.Process.Start("loader.exe", "-r 52");
startProgram.EnableRaisingEvents = true;
Application.Run(new Manager());
这是否允许初始过程仍然运行并执行其他操作?对不起,如果这是一个真正新问题。 –
@DavidBentley当然可以。你只注册该事件。所以如果创建的进程终止了'OnProcessExited'被调用。 (注意,我不确定是否在启动该进程的同一个线程上调用这个函数)。但是,在进程运行时,执行不会被阻止。 –
好的,如果我以一种形式打开外部程序,然后该表单关闭并打开另一个表单,这也可以工作吗?新形式是监控运行过程所需要的。 –