如何停止申请?

时间:2010-05-11 14:08:04

标签: c# .net

我有一个应用程序,并且来自,在此应用程序中,我必须通过关闭当前应用程序启动另一个进程,并在完成该过程后再次启动应用程序。流程如下,假设我有一个应用程序 app.exe ,另一个应用程序 another.exe ,所以我必须执行以下操作:

  1. 启动 app.exe
  2. 停止/关闭 app.exe 并从 app.exe启动 another.exe
  3. another.exe 完成后,停止/关闭 another.exe 并从其他程序启动 app.exe
  4. 有人请给我一些如何做的线索吗?

4 个答案:

答案 0 :(得分:5)

你需要让“another.exe”在退出之前重新启动“app.exe”,或让第三个程序监视前两个并在“a​​nother.exe”退出时重新启动“app.exe”。

所以:

  1. “app.exe”启动
  2. “app.exe”生成“another.exe”,然后退出
  3. “another.exe”启动
  4. “another.exe”生成“app.exe”,然后退出
  5. 或:

    1. “monitor.exe”启动
    2. “app.exe”启动
    3. “app.exe”退出
    4. “monitor.exe”检测到“app.exe”已退出,并生成“another.exe”
    5. “another.exe”启动
    6. “another.exe”退出
    7. “monitor.exe”检测到“another.exe”已退出,并生成“app.exe”
    8. 如果“app.exe”仍然应该启动“another.exe”,这里有一个变体:

      1. “app.exe”启动
      2. “app.exe”生成“monitor.exe”和“another.exe”,然后退出
      3. “another.exe”启动
      4. “another.exe”退出
      5. “monitor.exe”检测到“another.exe”已退出,并生成“app.exe”,然后退出

答案 1 :(得分:1)

此处如何停止当前流程

Process.GetCurrentProcess().Close();

当你使用

启动another.exe时,请调用它
Process.Start(...).

答案 2 :(得分:1)

我认为这就是你要找的东西

Process.Start("My Process");

            Process processToClose = Process.GetProcessById(your Process ID);
            processToClose.Kill();

请记住包括:

Using System.Diagnostics;

如果这些不符合您的需求,请查看Process类中的其他方法,我确信会引起您的注意。

答案 3 :(得分:0)

您需要的是第三个停止/启动主应用程序的exe。一旦app.exe关闭,它就无法执行任何操作。

请尝试以下方法:

编写applicationSwitcher.exe,帮助您打开/关闭应用程序并切换到主应用程序。