是否可以使用其他应用程序关闭正在运行的应用程序?
我已经实施了APP1.exe
和APP1_UNIN.exe
,我希望APP1_UNIN.exe
停止运行APP1.exe
并将其卸载。
有可能吗?
答案 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
您可以获得流程并杀死流程。