[英]Passing a string array from powershell to C#
我想从powershell调用C#程序,并将参数数组从powershell传递到C#程序。 C#程序采用文件路径,日期和文件扩展名并处理这些文件。
在我拥有的powershell脚本中,我将所有字符串存储在字符串数组中,并在start-process
使用-argumentlist
开关传递该字符串。
由于这些文件路径在我的工作中,因此我将为示例组成一些文件路径。 该脚本的名称是ProductionImportCaller
$ParametersToPass = "C:\my images,20130412,dat", "C:\my images\curiosity,20130412,bif"
Start-Process -FilePath C:\Users\ABetterProductionImport.exe
-ArgumentList $ParametersToPass
上面的脚本中没有换行。 我只是在此处添加换行符,因此更易于阅读。
当我调用.\\ProductionImportCaller
,传递的数组为:
c:\my
images,20130412,dat
c:\my
images\curiosity,20130412,bif
我不想要的。
所以这是我的问题:如何编写Powershell脚本,以便这些参数正确传递?
我努力了
如果我打电话,这可以工作:
start-process .\ABetterProductionImport.exe "C:\my images,20130412,dat"
编辑:但是,如果我从编写的脚本中调用相同的命令,将无法正常工作。 再说一遍,如何编写Powershell脚本以使其正确运行?
找到了答案。 如果我打电话
.\ABetterProductionImport.exe $ParametersToPass
完全没有启动过程或任何有效的方法。 哪个好
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.