也是书中《C#网络应用编程》的一章。方便日后翻用。

该例子为 notepad.exe (记事本)程序的启动与结束

引用命名空间:

using System.Diagnostics;  using System.IO;  

namespace StartStopProcess  {  public partial class Form1 : Form      {  int fileIndex;  string fileName = "notepad.exe";          Process process1 = new Process();  public Form1()          {              InitializeComponent();          }  

private void LoadProcessToControl()          {              lvw_Process.Items.Clear();              Process[] processes = Process.GetProcessesByName(Path.GetFileNameWithoutExtension(fileName));  foreach (Process p in processes)              {                  ListViewItem item = new ListViewItem(  new string[]{                      p.Id.ToString(),                      p.ProcessName,  string.Format("{0}KB",p.WorkingSet64 / 1024f),  string.Format("{0}",p.StartTime),                  p.MainModule.FileName              });                  lvw_Process.Items.Add(item);              }          }  

private void Form1_Load(object sender, EventArgs e)          {              LoadProcessToControl();          }  

private void btn_StartProcess_Click(object sender, EventArgs e)          {  string argument = Application.StartupPath + "\\myfile" + fileIndex + ".txt";  if (!File.Exists(argument))              {                  File.CreateText(argument);              }              ProcessStartInfo ps = new ProcessStartInfo(fileName, argument);              ps.WindowStyle = ProcessWindowStyle.Normal;              fileIndex++;              Process p = new Process();              p.StartInfo = ps;              p.Start();  //等待启动完成,否则获取进程信息可能会失败              p.WaitForInputIdle();              LoadProcessToControl();          }  

private void btn_StopProcess_Click(object sender, EventArgs e)          {  this.Cursor = Cursors.WaitCursor;              Process[] myprocesses = Process.GetProcessesByName(Path.GetFileNameWithoutExtension(fileName));  foreach (Process p in myprocesses)              {                  p.CloseMainWindow();                  p.WaitForExit(5000);    //设置最多等待5秒(处理类似用于需要用户确定关闭的对话框未关闭的情况)                  p.Close();              }              fileIndex = 0;              LoadProcessToControl();  this.Cursor = Cursors.Default;          }  

    }  }  

截图:

参考:http://www.wxzzz.com/?id=15

转载于:https://www.cnblogs.com/andrew-blog/archive/2011/12/02/StartOrStopProcess.html

C# 启动与停止进程相关推荐

  1. C# Winform 启动和停止进程

    启动和停止进程 一.启动进程 方法1: (1)       创建一个Process组件的实例,例如: Process myProcess = new Process(); (2)       设置其对 ...

  2. Linux Named 进程启动、停止脚本

    脚本名称 dnsnamed 脚本功能: 负责DNS服务器Named进程的启动.停止和状态信息采集等. 参数:start|stop|status 运行环境 OS:Linux Shell:Bash She ...

  3. Linux笔记-bash批量启动、停止、重启、查询状态指定Java进程(其他进行通用)

    此篇博文记录了在centos7.5上,编写bash,实现批量启动,停止.重启.查询java(其他进程通用). 这里有下面几个知识点: 1. shell中如何使用数组: 2. shell中对数组进行遍历 ...

  4. AIX上如何启动和停止系统服务

    AIX上如何启动和停止系统服务 ----------------------------- 在 AIX 上,服务也可以称为子系统(Subsystem),它是受控于系统资源控制器(System Reso ...

  5. Atitit. 软件GUIbutton与仪表盘--webserver区--获取apache配置文件路径 linux and apache的启动、停止、重新启动...

    Atitit.   软件GUIbutton与仪表盘--webserver区--获取apache配置文件路径 linux and apache的启动.停止.重新启动 能够通过"netstat  ...

  6. centos 查找nginx_centos7 nginx安装/启动/进程状态/杀掉进程

    1.安装 如果找不wget请安装,命令:yum -y install wget 2.安装成功后nginx的几个默认目录 输入命令: whereis nginx 执行目录:/usr/sbin/nginx ...

  7. Nginx —— nginx的命令行控制(nginx的启动与停止、重载配置文件、回滚日志文件、平滑升级等操作)

    在linux中,需要使用命令来控制Nginx服务器的启动与停止.重载配置文件.回滚日志文件.平滑升级等行为. 默认情况下,nginx被安装在目录/usr/local/nginx中,其二进制文件路径为/ ...

  8. Nginx 内置 命令启动,停止和重新加载Nginx

    使用Nginx命令启动,停止和重新加载NginxNginx具有一组内置工具,用于管理可以使用Nginx命令访问的服务. Nginx 启动 要启动Nginx和相关进程,请输入以下内容: sudo /et ...

  9. Nginx的启动和停止

    Nginx的启动和停止 Windows下Nginx的启动 非常简单,找到文件解压缩的路径,比如,d:/nginx,然后开始--运行--cmd,执行DOS命令: 注意,Nginx启动之后,DOS窗口就可 ...

  10. phpstudy一直自动停止启动_phpstudy apache启动后停止怎么办?

    phpstudy apache启动后停止的解决步骤:1.打开windows防火墙,将phpstudy添加到允许的应用:2.打开任务管理器,结束占用80端口的程序:3.安装VC9运行库:4.检查站点域名 ...

最新文章

  1. 13个你一定要知道的PyTorch特性
  2. 从生成对抗网络到更自动化的人工智能
  3. 富文本编辑器中空格转化为a_如何对富文本编辑器(FCK Html Editor)的工具栏进行扩展?...
  4. mac 卸载编辑器卸不干净
  5. POJ 2253 Frogger (求某两点之间所有路径中最大边的最小值)
  6. 第五次作业--原型设计(结对)
  7. 18.卷1(套接字联网API)---路由套接字
  8. MySQL游标(cursor) 定义及使用
  9. cad.net 筛选、选择集
  10. 用python爬取之后发现果然如此,都说知乎的小姐姐漂亮
  11. 冬天跑步比夏天跑步减肥更快 冬天跑步减肥冷怎么办
  12. SSL单向认证和双向认证交互流程
  13. STEP标准执行方法-ISO-10303-21
  14. 微信浏览器iOS复制链接错误
  15. android 安装第三方应用,Android手机常识 第三方应用如何安装
  16. 安卓开发者网站!Android开发岗还不会这些问题,Android面试题及解析
  17. 【java】程序启动后, 可以从键盘输入接收多个整数, 直到输入quit时结束输入. 把所有输入的整数倒序排列打印.
  18. java 16进制格式化_hutool系列教材 (三)- 编码工具 - Java 16进制工具
  19. Hypermesh前处理+Abaqus有限元分析
  20. 同一片区域网里实现共享文件夹的方法

热门文章

  1. hammer的初始化及移动端各种滑动
  2. JavaWeb项目开发案例精粹-第3章在线考试系统-005action层
  3. Java入门到精通——工具篇之Maven概述
  4. 【转】勤奋小孩的遗言:没有理由不坚持。
  5. ++i i++
  6. 图解DotNet框架之三:System.IO
  7. Netty4.0学习笔记系列之二:Handler的执行顺序
  8. csrf跨站请求伪造问题解决
  9. 当你不能回答别人的提问时怎么办
  10. 自动化部署关于在ubuntu下的docker容器折腾小记