_popen alternative in D?
Vladimir Panteleev
vladimir at thecybershadow.net
Thu Jul 21 06:33:34 PDT 2011
On Thu, 21 Jul 2011 16:19:12 +0300, Maraco <darkandan at windowslive.com>
wrote:
> Hello.
>
> I have a specific problem. I need to redirect console output from a
> console program to dfl textbox but i cant find function to do it.
> std.process.system only shows exiting code. I think
> std.process.shell should do it but it is crashing whole program.
>
> If You don't know what im asking for there's code how i've done it
> in C#:
>
> *CODE BEGINS
> Process p = new Process();
> p.StartInfo.FileName = "shutdown";
> p.StartInfo.Arguments = " /?";
> p.StartInfo.UseShellExecute = false;
> p.StartInfo.RedirectStandardOutput = true;
> p.StartInfo.CreateNoWindow = true;
> p.Start();
>
> string output = p.StandardOutput.ReadToEnd();
>
> textBox3.Text = output;
> *CODE ENDS
>
> Can you provide me an idea what im doing wrong or alternative to
> popen in D langauge?
>
> Regards.
This functionality is currently not implemented in D's standard library.
Lars Kyllingstad implemented this in his version of std.process, but only
supporting the POSIX API.
For Windows, you'll need to do it manually, in the same way as in C:
http://msdn.microsoft.com/en-us/library/ms682499(v=vs.85).aspx
(In my own projects, I just redirect the output to a temporary file.)
--
Best regards,
Vladimir mailto:vladimir at thecybershadow.net
More information about the Digitalmars-d
mailing list