使用参数在C#中运行控制台应用程序

使用参数在C#中运行控制台应用程序,c#,console-application,C#,Console Application,如何在C#中运行控制台应用程序,向其传递参数,并以Unicode获得应用程序的结果控制台。控制台应用程序中使用WriteLine。 重要的一点是在控制台应用程序中编写Unicode 签出Process.Start(): 您的代码可能如下所示: var process = Process.Start(pathToProgram, argsString); process.WaitForExit(); var exitCode = process.ExitCode; 如果“console应用

如何在C#中运行控制台应用程序,向其传递参数,并以Unicode获得应用程序的结果<代码>控制台。控制台应用程序中使用WriteLine。
重要的一点是在控制台应用程序中编写Unicode

签出
Process.Start()

您的代码可能如下所示:

var process = Process.Start(pathToProgram, argsString);

process.WaitForExit();

var exitCode = process.ExitCode;
如果“console应用程序的结果”是指程序在运行时向控制台输出的任何结果,那么您需要查看文档,并找出如何将程序的输出从控制台重定向到另一个流。

查看该类。您可以使用Process.Start(“myexe.exe”)调用任何可执行文件

在这里,您可以看到如何从Process.start()启动的控制台应用程序读取输出。

示例


根据您的使用情况,您应该小心其他一些示例可能会有问题。有关编写自己的代码时出现的常见错误,请阅读“”

对于要使用的库,这里有一个: 有一个简短的使用指南:“

尝试下面的代码,这里的“Amay”是一个参数

 System.Diagnostics.ProcessStartInfo info = new System.Diagnostics.ProcessStartInfo(@"E:\\ConsoleApplicationt\bin\Debug\ConsoleApplicationt.exe", "Amay");

 System.Diagnostics.Process p = System.Diagnostics.Process.Start(info);

很多帖子。控制台仅支持8位字符编码。从技术上讲,您可以将Console.OutputEncoding切换到utf8。如果你在没有重定向的情况下运行它,那就不好看了。使用一个文件来代替将是一个好主意。
 System.Diagnostics.ProcessStartInfo info = new System.Diagnostics.ProcessStartInfo(@"E:\\ConsoleApplicationt\bin\Debug\ConsoleApplicationt.exe", "Amay");

 System.Diagnostics.Process p = System.Diagnostics.Process.Start(info);