关闭Windows应用程序

时间:2010-09-30 08:25:04

标签: c# uninstall

是否可以使用其他应用程序关闭正在运行的应用程序?

我已经实施了APP1.exeAPP1_UNIN.exe,我希望APP1_UNIN.exe停止运行APP1.exe并将其卸载。 有可能吗?

5 个答案:

答案 0 :(得分:1)

使用 System.Diagnostics.Process 类:

http://msdn.microsoft.com/en-us/library/system.diagnostics.process.closemainwindow(v=VS.71).aspx

还有 Kill 方法。

答案 1 :(得分:1)

至少要杀死正在运行的进程,你可以这样做:

Process[] processes = Process.GetProcesses();
foreach (Process process in processes) {
  if (process.ProcessName == "APP1.exe") {
    try {
      process.Kill();
      break;
      } catch (Exception) { 
        //handle any exception here
      }
    }
  }
}

关于卸载它,我不确定。

答案 2 :(得分:1)

要卸载应用程序,您可以启动新流程并调用msiexec.exe,并在command line上指定要卸载的内容:

ProcessStartInfo psi;
//take your choice of which you want to use:
psi = new ProcessStartInfo("msiexec.exe", string.Format("/x {0}", "path of my msi"));
psi = new ProcessStartInfo("msiexec.exe", string.Format("/x /n {{{0}}}", "my product code"));
Process p = new Process();
p.StartInfo = psi;
p.Start();

答案 3 :(得分:0)

关闭,您可以通过终止其进程来完成。 System.Diagnostics.Process

Process []pArray = Process.GetProcesses();

foreach(Process prc in pArray) {
    string s = prc.ProcessName;
    if (s.CompareTo("APP1") ==0) {
        prc.Kill();
    }
}

答案 4 :(得分:0)

是使用System.Diagnostics

您可以获得流程并杀死流程。