关于C#在后台调用cmd执行命令

烂漫一生 提交于 2019-12-02 09:21:23

在实际开发中,尤其是在开发相关工具的时候,常常会用到系统命令行工具cmd来在后台执行一些命令。执行命令行的方法有两种,一种是带有返回值的,另一种是不带返回值的。相关方法如下。

带返回值的方法:

        //执行带返回值的cmd指令方法
        string ExecuteCMDWithOutput(string command)
        {
            ProcessStartInfo processInfo = new ProcessStartInfo("cmd.exe", "/S /C " + command)
            {
                CreateNoWindow = true,
                UseShellExecute = false,
                WindowStyle = ProcessWindowStyle.Hidden,
                RedirectStandardOutput = true
            };

            var process = new Process {StartInfo = processInfo};
            process.Start();
            var outpup = process.StandardOutput.ReadToEnd();

            process.WaitForExit();
            return outpup;
        }

不带返回值的方法:

        //执行不带返回值的cmd指令方法
        void ExecuteCMDMath(string command)
        {
            ProcessStartInfo processInfo = new ProcessStartInfo("cmd.exe", "/S /C " + command)
            {
                CreateNoWindow = true,
                UseShellExecute = true,
                WindowStyle = ProcessWindowStyle.Hidden
            };

            Process.Start(processInfo);
        }

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!