以编程方式运行 .net 控制台应用程序
Posted
技术标签:
【中文标题】以编程方式运行 .net 控制台应用程序【英文标题】:running .net console applications programmatically 【发布时间】:2012-04-03 08:37:36 【问题描述】:我有一个用 .net 编写的 .exe 程序(控制台应用程序)。
-
我需要执行它
提供输入
以字符串形式或最好以流形式获取输出。
目前我正在使用System.Diagnostics
命名空间和Process
类。
但是为此目的使用 Diagnostic
命名空间似乎没问题。
有什么方法可以让我更有效地做同样的事情吗?
就像使用反射找到Main()
方法然后调用它。
【问题讨论】:
【参考方案1】:Process
类是做你想做的事的正确工具。不要介意 Diagnostic
命名空间的名称 - 只需使用 Process
类即可。
【讨论】:
谢谢。我还需要在单独的应用程序域中运行此过程。可以使用这个命名空间来完成吗? 第一:忘记命名空间!然后,请阅读本文以了解命名空间是什么以及为什么它对您完全不重要:msdn.microsoft.com/en-us/library/… ***.com/questions/9991735/….. 你可以帮我解决我刚刚发布的第二个问题.. 阅读链接。谢谢【参考方案2】:完全没问题。 System.Diagnostics 只是一个命名空间。
如果需要更多信息,您可以navigate to this project 获取动力并查看如何以语法方式处理流程或来自VM found in here 的此 sn-p
var startInfo = new ProcessStartInfo(FilePath)
WorkingDirectory = RootFolderPath,
Arguments = StartingArguments,
RedirectStandardOutput = true,
UseShellExecute = false,
CreateNoWindow = true
;
ConsoleProcess = new Process StartInfo = startInfo;
ConsoleProcess.Start();
【讨论】:
以上是关于以编程方式运行 .net 控制台应用程序的主要内容,如果未能解决你的问题,请参考以下文章
可以以编程方式对 jar 文件(如 .net 程序集)进行版本控制吗?