Winform中实现执行cmd命令的工具类
生活随笔
收集整理的這篇文章主要介紹了
Winform中实现执行cmd命令的工具类
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
場景
Winform中執行cmd命令的工具類,比如調用某些exe,類似mysqldump.exe這樣類似的命令。
新建工具類CmdHelper
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace mysqldatabak {using System;using System.Collections.Generic;using System.Text;using System.Diagnostics;namespace Helper{/// <summary>/// 執行命令/// </summary>public class CmdHelper{////// 執行cmd.exe命令//////命令文本/// 命令輸出文本public static string ExeCommand(string commandText){return ExeCommand(new string[] { commandText });}////// 執行多條cmd.exe命令//////命令文本數組/// 命令輸出文本public static string ExeCommand(string[] commandTexts){Process p = new Process();p.StartInfo.FileName = "cmd.exe";p.StartInfo.UseShellExecute = false;p.StartInfo.RedirectStandardInput = true;p.StartInfo.RedirectStandardOutput = true;p.StartInfo.RedirectStandardError = true;p.StartInfo.CreateNoWindow = true;string strOutput = null;try{p.Start();foreach (string item in commandTexts){p.StandardInput.WriteLine(item);}p.StandardInput.WriteLine("exit");strOutput = p.StandardOutput.ReadToEnd();//strOutput = Encoding.UTF8.GetString(Encoding.Default.GetBytes(strOutput));p.WaitForExit();p.Close();}catch (Exception e){strOutput = e.Message;}return strOutput;}////// 啟動外部Windows應用程序,隱藏程序界面//////應用程序路徑名稱/// true表示成功,false表示失敗public static bool StartApp(string appName){return StartApp(appName, ProcessWindowStyle.Hidden);}////// 啟動外部應用程序//////應用程序路徑名稱///進程窗口模式/// true表示成功,false表示失敗public static bool StartApp(string appName, ProcessWindowStyle style){return StartApp(appName, null, style);}////// 啟動外部應用程序,隱藏程序界面//////應用程序路徑名稱///啟動參數/// true表示成功,false表示失敗public static bool StartApp(string appName, string arguments){return StartApp(appName, arguments, ProcessWindowStyle.Hidden);}////// 啟動外部應用程序//////應用程序路徑名稱///啟動參數///進程窗口模式/// true表示成功,false表示失敗public static bool StartApp(string appName, string arguments, ProcessWindowStyle style){bool blnRst = false;Process p = new Process();p.StartInfo.FileName = appName;//exe,bat and so onp.StartInfo.WindowStyle = style;p.StartInfo.Arguments = arguments;try{p.Start();p.WaitForExit();p.Close();blnRst = true;}catch{}return blnRst;}}} }調用示例
string cmdStr = mysqlDumpPath + " -h " + this.host.Text.Trim() + " -u" + this.username.Text.Trim() + " -p" + this.password.Text.Trim() + " " + this.database.Text.Trim() + " " + tableName + " > " + "\"" + this.textBox_bak_path.Text.Trim() + "\\" + tableName + ".sql\"";CmdHelper.ExeCommand(cmdStr);總結
以上是生活随笔為你收集整理的Winform中实现执行cmd命令的工具类的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Winform中实现连接Mysql8使用
- 下一篇: Winform中实现连接Mysql并获取