我有一个以.net编写的.exe程序(控制台应用程序)。以编程方式运行.net控制台应用程序
- 我需要执行它
- 提供输入
- 获取的输出作为一个字符串或优选作为流。
当前我正在使用System.Diagnostics
命名空间和Process
类。 但为此使用Diagnostic
命名空间剂量似乎没问题。
有什么方法可以让我更有效地做同样的事情? 像使用反射来找到Main()
方法,然后调用它。
我有一个以.net编写的.exe程序(控制台应用程序)。以编程方式运行.net控制台应用程序
当前我正在使用System.Diagnostics
命名空间和Process
类。 但为此使用Diagnostic
命名空间剂量似乎没问题。
有什么方法可以让我更有效地做同样的事情? 像使用反射来找到Main()
方法,然后调用它。
Process
类完全是你想做的事情的正确工具。不要介意Diagnostic
名称空间的名称 - 只需使用Process
类。
完全没问题。 System.Diagnostics只是一个命名空间。
如果有更多的信息需要,可以为navigate to this project动机和看看如何处理语法过程或从VM found in here
var startInfo = new ProcessStartInfo(FilePath)
{
WorkingDirectory = RootFolderPath,
Arguments = StartingArguments,
RedirectStandardOutput = true,
UseShellExecute = false,
CreateNoWindow = true
};
ConsoleProcess = new Process {StartInfo = startInfo};
ConsoleProcess.Start();
thankx这个片段。我还需要在单独的应用程序域中运行此过程。可以使用这个命名空间来完成吗? – 2012-04-03 10:23:06
第一:忘记命名空间!然后,请阅读以了解命名空间是什么以及它为什么对你根本无关紧要:http://msdn.microsoft.com/en-us/library/ms973231.aspx#assenamesp_topic5 – 2012-04-03 10:51:07
好吧,第二个? – 2012-04-03 10:53:50