I want to use Phobos std.process.execv(in string pathname, in immutable(char)[][] argv) to execute external programm with some parameter. But i found, that can't pass parameter properly - they not passed. Here very short example - caller.exe shoud call called.exe with parameters:
/*** begin file caller.d */ import std.process; void main() { string[] args = ["a1", "b2", "c3"]; std.process.execv("called.exe", args); } /*** end file caller.d */ /*** begin file called.d */ import std.file; import std.string; void main(string[] args) { string s = std.string.join(args, " "); std.file.write("called.log", s); } /*** end file called.d */ caller.exe execute called.exe with args "a1 b2 c3", then called.exe save this arguments to called.log file. but in my environment(Windows XP sp3, DMD 2.030 and DMD 1.045) i have only "called.exe b2 c3" in log file. "a1" argument missed. Where i made mistake? Can anyone reproduce? thanks.