When I try to do Process.Start("echo", "%cd%") it raises a System.ComponentModel.Win32Exception: The system cannot find the file specified.
When I do this manually in cmd it just works like it should. I never knew that there's a difference...
Also, when I do File.Exists(logfile.txt) (w/o path) of a file that should definitely be there, it returns false. This is btw the reason for the echo above: debugging...
This error doesn't occur on my developement machine, only on another one where I am testing on.
The Path variable looks normal. Both are WinXP. Both are running .NET 3.5
Try Process.Start("cmd.exe", "/c echo %CD%")
as far as echo is not an executable but a command inside.
You can use System.Environment.CurrentDirectory if you want to pass the working directory of your application to cmd. AFAIK %CD% is internal to cmd, that's why Process.Start won't expand it. For ordinary environment variables you can use Environment.ExpandEnvironmentVariables.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With