使用Process.Start启动.pl文件

时间:2010-05-14 08:45:40

标签: c# perl

我一直在使用Process.Start来启动可执行文件(.exe)文件。现在我需要用一些参数执行.pl文件。我仍然可以使用Process.Start或者我需要一种不同的方法吗?

编辑: - 当我尝试从CSharp代码调用perl文件时遇到以下错误时,我必须将此问题标记为未答复: - (当我从具有相同路径和参数的命令行,它工作正常)

System.ApplicationException:StartProcess失败  System.ComponentModel.Win32Exception:指定的可执行文件不是此OS平台的有效应用程序)

请注意,当我尝试从我的C#代码调用.exe文件时,我没有看到上述错误。

修改: - 立即检查以下链接: - How do I call Perl script in C# application? 似乎ProcessStartInfo构造函数有两个参数 - fileName和参数。您应该将Perl.exe设置为fileName,并且“argument”将是您的perl文件(.pl)以及它接受的其他参数。现在检查....

2 个答案:

答案 0 :(得分:2)

你当然可以:)你也可以通过在

中的文件名之后添加它们来传递它
Process.Start(file.pl args1 args 2);

它将使用您的.pl文件的默认应用程序加载文件,另一个选项是指定软件然后将您的文件作为参数传递,只要您拥有正确的软件来处理文件就应该没问题

Process.Start()可以指向任何文件,它将使用默认软件或您指定的软件打开,它不必是可执行文件。

答案 1 :(得分:1)

是的,你可以,Process.Start()接受一个字符串参数,你为这个参数传递的内容与你在windows start中输入相同字符串所做的完全相同 - >运行对话框。