// C# using System.Diagnostics; class MyProgram { static void Main(string[] args) { string MyExe = "C:\path\to\perl.exe"; string MyScript = args[0]; string MyDir = "Test Dir"; Process.Start(MyExe, MyScript, MyDir); } } # Perl my ($MyExe, $MyDir) = ("C:/path/to/perl.exe", "Test Dir"); my $MyScript = shift; system($MyExe, $MyScript, $MyDir);