string file =Application.StartupPath+@"\WinFrm_Main.exe";//运行程序位置
public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
// StopExe(file);
timer1.Enabled = false; }
private void button2_Click(object sender, EventArgs e)
{
timer1.Enabled = true;
}
void StopExe(string file)
{
Process pr = new Process();//声明一个进程类对象
pr.StartInfo.FileName = file;//指定运行的程序,
pr.Start();//运行
}
void StartExt()
{
//Process[] p_arry = Process.GetProcesses();//得到系统所有进程
//for (int i = 0; i < p_arry.Length; i++)//遍历每个进程
//{
// if (p_arry[i].ProcessName == "WinFrm_Main" && !p_arry[i].Responding)//发现有名为QQ的进程
// {
// p_arry[i].Kill();//就结束它。
// return;
// }
//} Process[] proc = Process.GetProcessesByName("WinFrm_Main");//创建一个进程数组,把与此进程相关的资源关联。
for (int i = 0; i < proc.Length; i++)
{
proc[i].Kill(); //逐个结束进程.
} System.GC.Collect();//垃圾回收 } private void timer1_Tick(object sender, EventArgs e)
{
Process[] proc = Process.GetProcessesByName("WinFrm_Main");//创建一个进程数组,把与此进程相关的资源关联。
for (int i = 0; i < proc.Length; i++)
{
if (proc[i].ProcessName == "WinFrm_Main" && !proc[i].Responding)//发现有名为WinFrm_Main的进程 或 WinFrm_Main和电脑停止交互 就退出
{
proc[i].Kill();//就结束它。
//StopExe(file);
}
}
if (proc.Length==0)//启动
StopExe(file);
System.GC.Collect();//垃圾回收 }

下载地址:http://download.csdn.net/detail/amy1314250/9849891

05-11 17:12