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

C# 实现自动化打开和关闭可执行文件(或 关闭停止与系统交互的可执行文件)的更多相关文章

  1. sql server 关于表中只增标识问题 C# 实现自动化打开和关闭可执行文件(或 关闭停止与系统交互的可执行文件) ajaxfileupload插件上传图片功能,用MVC和aspx做后台各写了一个案例 将小写阿拉伯数字转换成大写的汉字, C# WinForm 中英文实现, 国际化实现的简单方法 ASP.NET Core 2 学习笔记(六)ASP.NET Core 2 学习笔记(三)

    sql server 关于表中只增标识问题   由于我们系统时间用的过长,数据量大,设计是采用自增ID 我们插入数据的时候把ID也写进去,我们可以采用 关闭和开启自增标识 没有关闭的时候 ,提示一下错 ...

  2. Selenium2学习-015-WebUI自动化实战实例-013-通过 URL 关闭多余的已开浏览器窗口

    在日常的 WebUI 自动化测试脚本执行的过程中,经常会打开不同的网页,进行相应的操作,此时可能会打开很多的网页,当打开的网页过多时,无效的网页资源对运行脚本的机器造成了过多无效的资源浪费,因而在日常 ...

  3. java io流(字符流) 文件打开、读取文件、关闭文件

    java io流(字符流) 文件打开 读取文件 关闭文件 //打开文件 //读取文件内容 //关闭文件 import java.io.*; public class Index{ public sta ...

  4. 如何让Visual Studio 清除最近打开项目 关闭上次未关闭的标签窗口

    删除最近打开的文件: 打开HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\9.0\FileMRUList 删除最近打开的项目: 打开HKEY_CUR ...

  5. java中打开文件流后要关闭后重新打开

    记录错误,打开文件流一定要关闭并重新打开文件流,不然取的文件内容永远是第一次取的文件内容: /** * 读取配置文件 */ private Properties readProperties() { ...

  6. sublime打开文本时会记忆上次关闭时鼠标停留的位置

    sublime打开文本时会记忆上次关闭时鼠标停留的位置

  7. WinForm------如何打开子窗体的同时关闭父窗体

    方法: 如何打开子窗体的同时关闭父窗体 this.Hide(); new Frm_Management().ShowDialog(); this.Close();

  8. 关闭浏览器或者关闭使用window.open打开的页面时添加监听事件

    最近工作中有个需求:点击按钮时打开一个页面,此处取名为page1,打开页面的前提条件是如果有人已经打开过page1页面并且没有关闭时请求ajax判断session是否为空,如果为空则将用户名和文档id ...

  9. Chrome下关闭浏览器,关闭非脚本打开的页面

    今天脚本了里写了一句话: window.close() 但是浏览器却报了警告提示:Scripts may close only the windows that were opened by it,而 ...

随机推荐

  1. webdriver定位页面元素时使用set_page_load_time()和JavaScript停止页面加载

    webdriver定位页面元素时使用set_page_load_time()和JavaScript停止页面加载 原文:https://my.oschina.net/u/2344787/blog/400 ...

  2. JAVA 操作Excel工具类

    Bean转Excel对象 /* * 文件名:BeanToExcel.java */ import java.util.ArrayList; import java.util.List; import ...

  3. javascript中defer的作用

    javascript中defer的作用 <script src="../CGI-bin/delscript.js" defer></script>中的def ...

  4. js 实现数组深度copy

    1. slice() slice() 方法可从已有的数组中返回选定的元素.arrayObject.slice(start,end) ,返回一个新的数组,包含从 start 到 end (不包括该元素) ...

  5. HBase实验(CRUD和MR入库)

    目录 前期准备 在HBase shell中实现CRUD操作 1. 启动命令行客户端 2. 创建表 3. 删除.新增列族 4. 删除表teacher 5. 新增数据 6. 查看数据 用Java API实 ...

  6. TColor转化为字符串

    procedure TForm1.Button1Click(Sender: TObject); begin Memo1.Lines.Add(ColorToString(clRed)); Memo1.L ...

  7. Win10 Notebook

    E:\Perl\site\bin;E:\Perl\bin;C:\Program Files\Microsoft MPI\Bin\;C:\ProgramData\Oracle\Java\javapath ...

  8. 线程并发线程安全介绍及java.util.concurrent包下类介绍

    线程Thread,在Java开发中多线程是必不可少的,但是真正能用好的并不多! 首先开启一个线程三种方式 ①new Thread(Runnable).start() ②thread.start(); ...

  9. JavaScript Math.floor() 方法

    定义和用法: floor() 方法可对一个数进行下舍入. 语法: Math.floor(x); x:必须参数,可以是任意数值或表达式: 返回值: 小于等于 x,且与 x 最接近的整数. 说明: flo ...

  10. apache重启

    1.进入apache下的bin目录 /usr/local/apache/bin 2.执行命令 ./apachectl graceful