2012-06-02 68 views
0

我想从c#.net代码执行批处理文件。 批处理文件可能会占用未知数量的命令行参数。 我想从c#代码传递这些参数。如何将命令行参数传递给来自c#的批处理文件

这是如何通过c#实现的?

编辑: 我写了下面的代码

ProcessStartInfo psi = new ProcessStartInfo(filePath); 
    psi.WindowStyle = ProcessWindowStyle.Hidden; 
    psi.CreateNoWindow = true; 
    psi.Arguments = "some value"; 
    Process proc = new Process(); 
    proc.StartInfo = psi; 
    proc.Start();    
+1

这可以在互联网上找到。 485,000个“c#批处理文件参数”的结果。 – SimpleVar

+0

你的代码有什么问题? –

+1

@YoryeNathan; StackOverflow的目的是提出编程问题。阅读常见问题解答,如果您认为您的意见是合适的 – AMissico

回答

0

http://www.dotnetperls.com/process-start-vbnet一个很好的介绍。具体来说,请参阅底部的“运行可执行文件”示例。

这里是我使用的搜索查询http://www.bing.com/search?q=command+line+parameters+process+start,如果你需要更多的例子。

+0

我得到了答案。要传递多个参数,我只需使用下面的代码行。 ProcessStartInfo psi = new ProcessStartInfo(filePath); psi.WindowStyle = ProcessWindowStyle.Hidden; psi.Arguments =“value1”+“value2”+“value3”; – Sagar

+0

@sagar每个参数之间需要空格。你可以使用'string.Join(“,values)'来轻松地加入一个数据集合,并带有一定的分隔符。但是,在您上次评论中提供的示例中,您可以简单地执行'psi.Arguments =“value1 value2 value3;' – SimpleVar

相关问题