C# 实现自动化打开和关闭可执行文件(或 关闭停止与系统交互的可执行文件)
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# 实现自动化打开和关闭可执行文件(或 关闭停止与系统交互的可执行文件)的更多相关文章
- sql server 关于表中只增标识问题 C# 实现自动化打开和关闭可执行文件(或 关闭停止与系统交互的可执行文件) ajaxfileupload插件上传图片功能,用MVC和aspx做后台各写了一个案例 将小写阿拉伯数字转换成大写的汉字, C# WinForm 中英文实现, 国际化实现的简单方法 ASP.NET Core 2 学习笔记(六)ASP.NET Core 2 学习笔记(三)
sql server 关于表中只增标识问题 由于我们系统时间用的过长,数据量大,设计是采用自增ID 我们插入数据的时候把ID也写进去,我们可以采用 关闭和开启自增标识 没有关闭的时候 ,提示一下错 ...
- Selenium2学习-015-WebUI自动化实战实例-013-通过 URL 关闭多余的已开浏览器窗口
在日常的 WebUI 自动化测试脚本执行的过程中,经常会打开不同的网页,进行相应的操作,此时可能会打开很多的网页,当打开的网页过多时,无效的网页资源对运行脚本的机器造成了过多无效的资源浪费,因而在日常 ...
- java io流(字符流) 文件打开、读取文件、关闭文件
java io流(字符流) 文件打开 读取文件 关闭文件 //打开文件 //读取文件内容 //关闭文件 import java.io.*; public class Index{ public sta ...
- 如何让Visual Studio 清除最近打开项目 关闭上次未关闭的标签窗口
删除最近打开的文件: 打开HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\9.0\FileMRUList 删除最近打开的项目: 打开HKEY_CUR ...
- java中打开文件流后要关闭后重新打开
记录错误,打开文件流一定要关闭并重新打开文件流,不然取的文件内容永远是第一次取的文件内容: /** * 读取配置文件 */ private Properties readProperties() { ...
- sublime打开文本时会记忆上次关闭时鼠标停留的位置
sublime打开文本时会记忆上次关闭时鼠标停留的位置
- WinForm------如何打开子窗体的同时关闭父窗体
方法: 如何打开子窗体的同时关闭父窗体 this.Hide(); new Frm_Management().ShowDialog(); this.Close();
- 关闭浏览器或者关闭使用window.open打开的页面时添加监听事件
最近工作中有个需求:点击按钮时打开一个页面,此处取名为page1,打开页面的前提条件是如果有人已经打开过page1页面并且没有关闭时请求ajax判断session是否为空,如果为空则将用户名和文档id ...
- Chrome下关闭浏览器,关闭非脚本打开的页面
今天脚本了里写了一句话: window.close() 但是浏览器却报了警告提示:Scripts may close only the windows that were opened by it,而 ...
随机推荐
- SQL中INNER JOIN的用法
SQL join 用于根据两个或多个表中的列之间的关系,从这些表中查询数据. Join 和 Key 有时为了得到完整的结果,我们需要从两个或更多的表中获取结果.我们就需要执行 join. 数据库中的表 ...
- c++builder 字节 编码 转换大全 String TBytes byte
System.SysUtils System::DynamicArray<System::WideChar> TCharArray System::TArray__1<System: ...
- eclipse中使用maven的 maven install
windows -> preferences -> Java -> Installed JREs 在default VM arguments 中添加 -Dmaven.multiMod ...
- 116. Populating Next Right Pointers in Each Node (Tree; WFS)
Given a binary tree struct TreeLinkNode { TreeLinkNode *left; TreeLinkNode *right; TreeLinkNode *nex ...
- php中++i 与 i++ 的区分详解
在编程时我们常会使用到i++和++i,那两者之间有什么区别呢,本教程就为大家详细介绍一下. 1.++i 的用法(以 a=++i ,i=2 为例) 先将 i 值加 1 (也就是 i=i+1 ),然后赋给 ...
- SQLite3学习笔记----创建数据库的两种方式
今天研究学习SQLite,刚开始创建数据库,就遇到了一个坑,是自己粗心了,特记录一下. 实验环境: OS:Ubuntu18.04 创建数据库名称:test.db 实验步骤: 1.检查是否已经安装了SQ ...
- 未能映射路径"/"
1.检查Server.MapPath 这里面需要像这样: ~/uploads/ 有~符号. 2.应用程序池出现问题,换一个应用程序池,或者重启程序池.
- import c++ project to eclipse cdt with exiting makefile
Step 2: You are now ready to build your project. To build your project, select Project > Build Pr ...
- windows10 查看进程端口的情况
以程序 winnfsd.exe 为例: 1 查看进程号 PID C:\Users\leo>tasklist|findstr winnfsd.exe winnfsd.exe ...
- ForwardPriceSimulationService
using System;using System.Collections.Generic;using System.Linq;using System.Text; using System.Coll ...