1、首先分享CmdHelper类

  1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4. using System.Diagnostics;
  5.  
  6. namespace Helper
  7. {
  8. /// <summary>
  9. /// 执行命令
  10. /// </summary>
  11. public class CmdHelper
  12. {
  13. ///
  14. /// 执行cmd.exe命令
  15. ///
  16. ///命令文本
  17. /// 命令输出文本
  18. public static string ExeCommand(string commandText)
  19. {
  20. return ExeCommand(new string[] { commandText });
  21. }
  22. ///
  23. /// 执行多条cmd.exe命令
  24. ///
  25. ///命令文本数组
  26. /// 命令输出文本
  27. public static string ExeCommand(string[] commandTexts)
  28. {
  29. Process p = new Process();
  30. p.StartInfo.FileName = "cmd.exe";
  31. p.StartInfo.UseShellExecute = false;
  32. p.StartInfo.RedirectStandardInput = true;
  33. p.StartInfo.RedirectStandardOutput = true;
  34. p.StartInfo.RedirectStandardError = true;
  35. p.StartInfo.CreateNoWindow = true;
  36. string strOutput = null;
  37. try
  38. {
  39. p.Start();
  40. foreach (string item in commandTexts)
  41. {
  42. p.StandardInput.WriteLine(item);
  43. }
  44. p.StandardInput.WriteLine("exit");
  45. strOutput = p.StandardOutput.ReadToEnd();
  46. //strOutput = Encoding.UTF8.GetString(Encoding.Default.GetBytes(strOutput));
  47. p.WaitForExit();
  48. p.Close();
  49. }
  50. catch (Exception e)
  51. {
  52. strOutput = e.Message;
  53. }
  54. return strOutput;
  55. }
  56. ///
  57. /// 启动外部Windows应用程序,隐藏程序界面
  58. ///
  59. ///应用程序路径名称
  60. /// true表示成功,false表示失败
  61. public static bool StartApp(string appName)
  62. {
  63. return StartApp(appName, ProcessWindowStyle.Hidden);
  64. }
  65. ///
  66. /// 启动外部应用程序
  67. ///
  68. ///应用程序路径名称
  69. ///进程窗口模式
  70. /// true表示成功,false表示失败
  71. public static bool StartApp(string appName, ProcessWindowStyle style)
  72. {
  73. return StartApp(appName, null, style);
  74. }
  75. ///
  76. /// 启动外部应用程序,隐藏程序界面
  77. ///
  78. ///应用程序路径名称
  79. ///启动参数
  80. /// true表示成功,false表示失败
  81. public static bool StartApp(string appName, string arguments)
  82. {
  83. return StartApp(appName, arguments, ProcessWindowStyle.Hidden);
  84. }
  85. ///
  86. /// 启动外部应用程序
  87. ///
  88. ///应用程序路径名称
  89. ///启动参数
  90. ///进程窗口模式
  91. /// true表示成功,false表示失败
  92. public static bool StartApp(string appName, string arguments, ProcessWindowStyle style)
  93. {
  94. bool blnRst = false;
  95. Process p = new Process();
  96. p.StartInfo.FileName = appName;//exe,bat and so on
  97. p.StartInfo.WindowStyle = style;
  98. p.StartInfo.Arguments = arguments;
  99. try
  100. {
  101. p.Start();
  102. p.WaitForExit();
  103. p.Close();
  104. blnRst = true;
  105. }
  106. catch
  107. {
  108. }
  109. return blnRst;
  110. }
  111.  
  112. /// <summary>
  113. /// 实现压缩,需要rar.exe上传到网站根目录
  114. /// </summary>
  115. /// <param name="s"></param>
  116. /// <param name="d"></param>
  117. /// <example>rar("e:/www.svnhost.cn/", "e:/www.svnhost.cn.rar");</example>
  118. public static void Rar(string s, string d)
  119. {
  120. ExeCommand(System.Web.HttpContext.Current.Server.MapPath("~/rar.exe") + " a \"" + d + "\" \"" + s + "\" -ep1");
  121. }
  122.  
  123. /// <summary>
  124. /// 实现解压缩,需要rar.exe上传到网站根目录
  125. /// </summary>
  126. /// <param name="s"></param>
  127. /// <param name="d"></param>
  128. /// <example>unrar("e:/www.svnhost.cn.rar", "e:/");</example>
  129. public static void UnRar(string s, string d)
  130. {
  131. ExeCommand(System.Web.HttpContext.Current.Server.MapPath("~/rar.exe") + " x \"" + s + "\" \"" + d + "\" -o+");
  132. }
  133.  
  134. }
  135.  
  136. }

2、利用CmdHelper类执行操作

(1)检查Winddows激活有效期:

  1. CmdHelper.ExeCommand("slmgr.vbs -xpr");

(2)计算器

  1. CmdHelper.ExeCommand("calc");

(3)记事本

  1. CmdHelper.ExeCommand("notepad");

(4)注册表编辑器

  1. CmdHelper.ExeCommand("regedit");

(5)计算机性能监测

  1. CmdHelper.ExeCommand("perfmon.msc");

(6)任务管理器

  1. CmdHelper.ExeCommand("taskmgr");

(7)系统版本

  1. CmdHelper.ExeCommand("winver");

(8)画图板

  1. CmdHelper.ExeCommand("mspaint");

(9)远程桌面连接

  1. CmdHelper.ExeCommand("mstsc");

(10)放大镜

  1. CmdHelper.ExeCommand("magnify");

(11)DirectX诊断工具

  1. CmdHelper.ExeCommand("dxdiag");

(12)屏幕键盘

  1. CmdHelper.ExeCommand("osk");

(13)事件查看器

  1. CmdHelper.ExeCommand("eventvwr");

(14)造字程序

  1. CmdHelper.ExeCommand("eudcedit");

(15)字符映射表

  1. CmdHelper.ExeCommand("charmap");

(16)注销

  1. CmdHelper.ExeCommand("logoff");

(17)关机

  1. CmdHelper.ExeCommand("shutdown -s -t 00");

(18)60s后关机

  1. CmdHelper.ExeCommand("shutdown -s -t 60");

(19)重启

  1. CmdHelper.ExeCommand("shutdown -r -t 00");

(20)取消关机/重启指令

  1. CmdHelper.ExeCommand("shutdown -a");

Winform执行CMD命令的更多相关文章

  1. JAVA之执行cmd命令

    感言在前:时隔好久没有更新博客园了,忙东忙西也没忙出个什么之所以然来.回首过去一两个月,只能用“疲倦”两个字来形容,而且是身心疲惫.每天11.12个小时的工作我都没觉得烦,但是总是想克服却又很难克服的 ...

  2. [转]Delphi执行CMD命令

    今天看到有人在问用代码执行CMD命令的问题,就总结一下用法,也算做个备忘. Delphi中,执行命令或者运行一个程序有2个函数,一个是winexec,一个是shellexecute.这两个大家应该都见 ...

  3. C# 执行CMD 命令

    /// <summary> /// 执行CMD 命令 /// </summary> /// <param name="strCommand">命 ...

  4. C# 执行CMD命令的方法

    /// <summary> /// 执行CMD命令 /// </summary> /// <param name="str"></para ...

  5. 如何使用Java执行cmd命令

    用JAVA代码实现执行CMD命令的方法! Runtime rt = Runtime.getRuntime(); Process p = rt.exec(String[] cmdarray);     ...

  6. java执行cmd命令并获取输出结果

    1.java执行cmd命令并获取输出结果 import java.io.BufferedReader; import java.io.InputStreamReader; import org.apa ...

  7. Java 调用并执行cmd命令

    cmd java 调用 执行 概要: Java 调用并执行cmd命令 Java | 复制 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 2 ...

  8. Atitit.执行cmd 命令行 php

    Atitit.执行cmd 命令行 php 1. 执行cmd 命令行,调用系统命令的基础 1 1.1. 实际执行模式 1 1.2. 空格的问题 1 1.3. 中文路径的问题,程序文件读取编码设置 1 1 ...

  9. node执行cmd命令方法

    var cmd='tasklist';//获取 子进程模块的exec方法,用于执行cmd命令var exec = require('child_process').exec; //运行 定义的cmd命 ...

随机推荐

  1. L2-001. 紧急救援 (Dijkstra算法打印路径)

    作为一个城市的应急救援队伍的负责人,你有一张特殊的全国地图.在地图上显示有多个分散的城市和一些连接城市的快速道路.每个城市的救援队数量和每一条连接两个城市的快速道路长度都标在地图上.当其他城市有紧急求 ...

  2. 【裸的并查集】POJ 1611 The Suspects

    http://poj.org/problem?id=1611 [Accepted] #include<iostream> #include<cstdio> #include&l ...

  3. POJ 2240_Arbitrage

    题意: 给定一系列货币汇率,求能否从一种货币,经过一系列转换,最终转化回更高价值的该种货币. 分析: 即为求最长路并判断是否存在"正"权值回路,这里用的bellmanford算法. ...

  4. 记 SpringBoot1.* 转 Springoot2.0 遇到的问题

    1.拦截器问题 到2.0之后在配置文件中写 static-path-pattern: /static/** 已经不起作用(2.0需要在方法中配置) SpringBoot1.*写法 @Configura ...

  5. MongoDB小结25 - 复合唯一索引

    只要满足索引的其中之一不同即可 db.blog.ensureIndex({"username":1,"blogname":1}) 作者和作品名其中之一不同即可创 ...

  6. MongoDB小结20 - find【查询条件$size】

    size可以获得指定数组长度的文档 db.user.find({"fruit":{"$size":3}},{"_id":0}) { &quo ...

  7. [大雾雾雾雾] 告别该死的 EFCore Fluent API

    [EF Core Oracle  列名大小写问题] [EF Core Oracle column name case problem] [EF Core PostgreSql 列名大小写问题] [EF ...

  8. Linux学习系列之lvs+keepalived

    LVS简介 LVS介绍 LVS是Linux Virtual Server的缩写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统,属于4层负载均衡 ipvs和ipvsadm的关系 我们使用配置LV ...

  9. Angular CLI: 1.6.7 入门

    当你使用npm或者yarn也安装不了angular-cli时,请使用淘宝镜像. Step1 npm i -g cnpm --registry=https://registry.npm.taobao.o ...

  10. 工作总结 2018 - 4 - 13 select标签 multiple 属性 同时选择多个选项

    <div class="col-xs-4"> @Html.DropDownList("CustomerType", (MultiSelectList ...