3

我在 C# 项目中的场景是用户将路径传递"c:\homedir\mydir"给批处理文件,然后批处理文件应该接受此路径并在指定路径创建目录。

我不知道如何通过 c# 将字符串传递给批处理文件以及批处理文件将如何接受字符串并对其进行处理。

4

2 回答 2

2

创建一个流程并通过StartInfo.Arguments属性传递您的参数。

Process proc = new Process();
proc.StartInfo.FileName = //path to your BAT file
proc.StartInfo.Arguments = String.Format("{0}", @"C:\homedir\mydir");
//set the rest of the process settings
proc.Start();

这将加载您的 BAT 文件并传递您添加的任何参数。您的 BAT 文件可以使用%1第一个参数、%2第二个参数等访问参数...

于 2013-04-01T13:17:59.633 回答
1

由于您没有向我们提供任何信息,因此我仅举一个这些主题的示例。

首先,您需要使用Process类包含System.Diagnostics命名空间。

提供对本地和远程进程的访问,并使您能够启动和停止本地系统进程。

带有批处理文件的示例:

 Process p = new Process();
 p.StartInfo.UseShellExecute = false;
 p.StartInfo.RedirectStandardOutput = true;
 p.StartInfo.FileName = "yourbatchfile.bat";
 p.Start();

对于传递参数,您可以使用ProcessStartInfo.Arguments属性。

获取或设置启动应用程序时要使用的命令行参数集。

于 2013-04-01T13:18:48.360 回答