在正常的进程工作中可能遇到某些某些资源被占用的情况,需要关闭这些占用资源的进程,然后方便自己继续进行工作,以adb.exe进程被占用为例:

设置默认adb端口位5037,如果不是该端口可以在函数的参数列表中增加一个变量来替代。

private void button1_Click(object sender, EventArgs e)

{

try

{

//创建一个进程

Process p = new Process();

p.StartInfo.FileName = "cmd.exe";

p.StartInfo.UseShellExecute = false;//是否使用操作系统shell启动

p.StartInfo.RedirectStandardInput = true;//接受来自调用程序的输入信息

p.StartInfo.RedirectStandardOutput = true;//由调用程序获取输出信息

p.StartInfo.RedirectStandardError = true;//重定向标准错误输出

p.StartInfo.CreateNoWindow = true;//不显示程序窗口

p.Start();//启动程序

string strCMD = "netstat -aon|findstr \"5037\"";

//向cmd窗口发送输入信息

p.StandardInput.WriteLine(strCMD + "&exit");

p.StandardInput.AutoFlush = true;

//获取cmd窗口的输出信息

string output = p.StandardOutput.ReadToEnd();

char[] szChar = new char[] { '\r', '\n' };

string[] strArr = output.Split(szChar, StringSplitOptions.RemoveEmptyEntries);

List<int> listInt = new List<int>();

foreach (string strItem in strArr)

{

if (strItem.Contains("ESTABLISHED"))

{

string strPid = strItem.Substring(strItem.IndexOf("ESTABLISHED") + 11);

listInt.Add(Int32.Parse(strPid.Trim()));

}

}

strCMD = "taskkill /f ";

foreach (int nItem in listInt)

{

strCMD += $" /pid {nItem}";  // 一次性杀死多个进程

}

//向cmd窗口发送输入信息

p.Start();//启动程序

p.StandardInput.WriteLine(strCMD + " &exit");

p.StandardInput.AutoFlush = true;

richTextBox1.Text = output;

//等待程序执行完退出进程

p.WaitForExit();

p.Close();

}

catch (Exception ex)

{

MessageBox.Show(ex.Message + "\r\n跟踪;" + ex.StackTrace);

}

}

在进程中执行cmd.exe指令关闭其它进程的方式[c#]相关推荐

  1. python中cmd全称_【转】Python中执行cmd的三种方式

    原文链接:http://blog.csdn.net/menglei8625/article/details/7494094 目前我使用到的python中执行cmd的方式有三种: 1. 使用os.sys ...

  2. 怎样在Python中执行cmd

    这篇文章主要给大家分享在Python中执行cmd,下文描述了三个方法使用os.system()方法.使用os.popen()方法.使用subprocess.Popen(),需要的朋友可以参考一下 1. ...

  3. Win10--在右键菜单中添加cmd.exe(在此处打开CMD窗口)

    原文网址:Win10--在右键菜单中添加cmd.exe(在此处打开CMD窗口)_IT利刃出鞘的博客-CSDN博客 简介 说明 本文介绍Windows10如何在右键菜单中添加cmd.exe(在此处打开C ...

  4. win8中让cmd.exe始终以管理员身份运行

    原文地址为: win8中让cmd.exe始终以管理员身份运行 最近在学习配置本地服务器,在命令行启动mysql时总是由于权限不足而失败, Win+R -- cmd ,这样总是不能,还要找到cmd.ex ...

  5. 在进程中执行新代码 execl、execle、execlp、execv、execve和execvp函数

    在进程中执行新代码 execl.execle.execlp.execv.execve和execvp函数 摘要:本文主要讲述怎样在进程中执行新代码,以及exec系列函数的基本用法. 在进程中执行新代码 ...

  6. Qt 中执行cmd命令失败,无权限,需要提升程序以管理员运行 vs2013设置

    程序中有些 地方 需要执行windows cmd 命令, 如 taskkill 进程命令 (QString c = "taskkill /im osk.exe /f";m_pPro ...

  7. java中执行cmd命令_如何通过Java执行cmd命令

    小编典典 我在forums.oracle.com中找到了 允许重用进程以在Windows中执行多个命令:http : //kr.forums.oracle.com/forums/thread.jspa ...

  8. python使用教程cmd啥意思-python中执行cmd的方式

    1. 使用os.system("cmd") 导入import os. 程序会打出cmd在linux上执行的信息. os.system("ls") 2. 使用Po ...

  9. 8086简单的指令流水线_在8086微处理器中执行流水线的指令和概念的步骤

    8086简单的指令流水线 Any computer or machine works according to some instructions. These instructions are re ...

最新文章

  1. Shell生成随机数并输出文件对应行
  2. struts2.2.3需包含的jar包
  3. nacos1.3.2连接mysql_Nacos 1.3.0版本部署连接mysql 8+
  4. java stringbuffer倒置_Java程序设计05——String和StringBuffer
  5. Reactive Extensions 相见恨晚的Rx.Net
  6. MongoDB学习笔记一:MongoDB的下载和安装
  7. mysql日期排序YMD_php将二维数组按日期(支持Ymd和Ynj格式日期)排序
  8. 修改Wordpress插件---advanced-access-manager.1.7.3---
  9. xcode打包导出ipa
  10. 基于SLAM的机器人的自主定位导航
  11. CPU0704报错处理
  12. Debian 下的五笔输入法 Rime
  13. 1000多万淘宝卖家及23万天猫卖家,开始构建私域流量时代!
  14. git 清除版本库中的忽略文件
  15. Spring Security 配置白名单访问后,仍然报错403
  16. 【好文转载】产品经理做产品设计的九步法
  17. 素数筛(筛选法求素数)
  18. GBC代理“花生漫画PEANUTS”,遭遇侵权账户冻结应该怎么处理?
  19. CSP2021提高组游记
  20. ExtJS EditorGridPanel 示例之Array格式(自定义Array解析器)Store前后台增删改查

热门文章

  1. 优秀的工具为iPad游戏开发者
  2. java io bio nio面试题_漫画:一文学会面试中常问的 IO 问题!
  3. 思维模型 核心5法则
  4. Windows系统查看CUDA版本号
  5. 二手房装修流程全步骤
  6. 985毕业的他裸辞都找不到工作,干了五年Android开发了,你觉得裸辞需不需要“冷静期”?
  7. 基于Aspose Task进行MS Project导出-无限制版
  8. Android APP 提高进程服务优先级 常驻内存 服务杀不死
  9. 为个么,每一个明年,都是OLED大发展的年份
  10. mysql winpcap_WinPcap使用小结(一)