在我的C#项目中,场景是用户会传递类似于"c:\homedir\mydir"
的路径到批处理文件,然后批处理文件应该接受这个路径并在指定的路径上创建目录。
我不知道如何通过C#将字符串传递给批处理文件,以及批处理文件如何接受字符串并处理它。
在我的C#项目中,场景是用户会传递类似于"c:\homedir\mydir"
的路径到批处理文件,然后批处理文件应该接受这个路径并在指定的路径上创建目录。
我不知道如何通过C#将字符串传递给批处理文件,以及批处理文件如何接受字符串并处理它。
创建一个进程,并通过 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
表示第二个参数等来访问参数。
由于您没有给我们任何信息,我只举一个这些主题的例子。
首先,您需要使用 Process
类,包括 System.Diagnostics
命名空间。
提供访问本地和远程进程的功能,并使您能够启动和停止本地系统进程。
使用批处理文件的示例:
Process p = new Process();
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.FileName = "yourbatchfile.bat";
p.Start();
要传递参数,您可以使用 ProcessStartInfo.Arguments
属性。
获取或设置启动应用程序时要使用的命令行参数集。