【发布时间】:2011-08-23 06:37:15
【问题描述】:
可以使用类似这样的东西在 c# 中运行命令行:
process = new Process();
process.StartInfo.FileName = command;
process.Start();
问题是命令字符串是否包含参数,例如:
C:\My Dir\MyFile.exe MyParam1 MyParam2
这不起作用,我看不到如何从该字符串中提取参数并将其设置在process.Arguments 属性上?路径和文件名可以是别的东西,文件不必以exe结尾。
我该如何解决这个问题?
【问题讨论】:
-
所以,问题是,如何将命令行拆分为
FileName和Arguments。 -
听起来你想要一个正则表达式来找到断点。严格来说,如果文件名中包含空格,则应该用双引号括起来。那会对你有很大帮助。是这种情况吗,在您的示例中是文件名
C:\\My或C:\\My Dir\MyFile.exe?顺便说一句,M是否逃过一劫? -
文件是否以点和任何扩展名结尾?例如.com、.exe...