gpt4 book ai didi

c# - 在 C# 中执行命令提示符命令

转载 作者:太空宇宙 更新时间:2023-11-03 20:32:03 25 4
gpt4 key购买 nike

:)

我有一个可以通过命令行执行的软件,现在我想直接从我的 C# 应用程序中执行它。可悲的是,没有错误,但我仍然做不到。 :(

软件的.exe文件路径为C:\program files\mysoftware.exe

我想输入的命令是cd c:\program files\mysoftware文件夹进入mysoftware.exe d:\myfolder\file1.xxx d:\myfolder\file2.xxx -mycommand进入退出

上面的命令在实际的命令提示符下工作得很好,但它们在我的 C# 代码中不起作用。

代码如下:

        Process cmdprocess = new Process();
System.Diagnostics.ProcessStartInfo startinfo = new System.Diagnostics.ProcessStartInfo();
startinfo.FileName = "cmd";
startinfo.WindowStyle = ProcessWindowStyle.Hidden;
startinfo.CreateNoWindow = true;
startinfo.RedirectStandardInput = true;
startinfo.RedirectStandardOutput = true;
startinfo.UseShellExecute = false;
cmdprocess.StartInfo = startinfo;
cmdprocess.Start();
System.IO.StreamReader sr = cmdprocess.StandardOutput;
System.IO.StreamWriter sw = cmdprocess.StandardInput;
sw.WriteLine(@"echo on");
sw.WriteLine(@"c:");
sw.WriteLine(@"cd" +@"program files\mysoftwarefolder");
sw.WriteLine(@"mysoftware.exe" +@"d:\myfolder\file1.xxx" +@"d:\myfolder\file2.xxx" +@"-mycommand");
sw.WriteLine(@"exit");
sw.Close();
sr.Close();

我猜不正确的部分可能是"startinfo.FileName = "cmd";"或者我在代码中键入命令的方式,但我不知道如何更正它们。 :(

请告诉我我做错了什么。我感谢你的每一个回答! :)))

更新 感谢您的帮助!我尝试在批处理文件中编写命令,但它只能在 Debug模式下工作。 (我忘了告诉你们,我正在开发 Web 服务。)当我运行将使用此 C# 服务的外部项目时,它不会工作。我不知道我是否应该在我的代码中添加一些东西。

帮帮我 (T___T)

最佳答案

将这些命令写在批处理文件中,并执行批处理文件。

在批处理文件中:

cd c:\program files\mysoftwareFolder 
mysoftware.exe
d:\myfolder\file1.xxx
d:\myfolder\file2.xxx -mycommand
exit

代码:

Process cmdprocess = new Process();
ProcessStartInfo startinfo = new ProcessStartInfo();
startinfo.FileName = "path to batchfile.bat";
startinfo.WindowStyle = ProcessWindowStyle.Hidden;
startinfo.CreateNoWindow = true;
startinfo.RedirectStandardInput = true;
startinfo.RedirectStandardOutput = true;
startinfo.UseShellExecute = false;
cmdprocess.StartInfo = startinfo;
cmdprocess.Start();

关于c# - 在 C# 中执行命令提示符命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7051842/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com