C# 调用exe 并传参

本文介绍了如何使用C#通过System.Diagnostics.Process类来调用exe程序并传递参数,同时展示了如何隐藏窗口、捕获输出以及如何调用DOS命令并执行远程操作。示例中包括了读取用户输入、配置文件参数以及通过rsh命令执行远程脚本。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 System.Diagnostics.Process p = new System.Diagnostics.Process();
                p.StartInfo = new System.Diagnostics.ProcessStartInfo();
                p.StartInfo.FileName = FilePath;
                Console.WriteLine("Input the command, Please");
                string strArgs = Console.ReadLine();
                p.StartInfo.Arguments = strArgs;//空格分隔各个参数 这里有两个参数。
                p.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
                p.StartInfo.RedirectStandardOutput = true;
                p.StartInfo.UseShellExecute = false;
                p.StartInfo.CreateNoWindow = true;//让窗体不显示

                p.Start();


                System.IO.StreamReader reader = p.StandardOutput;//截取输出流 ,如果exe中有Console.WriteLine("..")      
                string outLine = reader.ReadLine();//每次读取一行

另外一种是调用dos,并执行命令

              string strIp = ConfigurationSettings.AppSettings["IP"].ToString();
                string strPath = ConfigurationSettings.AppSettings["Path"].ToString();
                string strAllData = ConfigurationSettings.AppSettings["AllData"].ToString();
                string strArgs = string.Empty;
                string strCmd = Console.ReadLine();

                if (strCmd == "show")
                {
                    Console.WriteLine(strAllData);
                }
                else
                {
                    System.Diagnostics.Process p = new System.Diagnostics.Process();
                    p.StartInfo.FileName = "cmd.exe";
                    p.StartInfo.RedirectStandardInput = true;
                    p.StartInfo.UseShellExecute = false;
                    p.Start();
                    p.StandardInput.WriteLine("rsh " + strIp + " " + strPath + " " + strCmd);
                    p.Close();
                }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值