I have successfully opened command prompt window using C# through the following code.
Process p = new Process();
p.StartInfo.FileName = "cmd.exe";
p.StartInfo.WorkingDirectory = @"d:\pdf2xml";
p.StartInfo.WindowStyle = ProcessWindowStyle.Normal;
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.RedirectStandardInput = true;
p.Start();
p.StandardInput.WriteLine(@"pdftoxml.win32.1.2.7 -annotation "+filename);
p.StandardInput.WriteLine(@"cd D:\python-source\ds-xmlStudio-1.0-py27");
p.StandardInput.WriteLine(@"main.py -i example-8.xml -o outp.xml");
p.WaitForExit();
But, i have also passed command to change the directory.
problems:
Please guide me to get out of those issue...
To change the startup directory, you can change it by setting p.StartInfo.WorkingDirectory to the directory that you are interested in. The reason that your directory is not changing is because the argument /cd:\\test
. Instead try /c cd d:\\test
Process p = new Process();
p.StartInfo.FileName = "cmd.exe";
p.StartInfo.WorkingDirectory = @"C:\";
p.StartInfo.UseShellExecute = false;
...
p.Start();
You can hide the command prompt by setting p.StartInfo.WindowStyle to Hidden to avoid showing that window.
p.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
http://msdn.microsoft.com/en-us/library/system.diagnostics.processstartinfo.windowstyle.aspx
You can use p.StandardInput.WriteLine to send commands to cmd window. For this just set the p.StartInfo.RedirectStandardOutput to ture. like below
Process p = new Process();
p.StartInfo.FileName = "cmd.exe";
//p.StartInfo.Arguments = @"/c D:\\pdf2xml";
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.RedirectStandardInput = true;
p.Start();
p.StandardInput.WriteLine(@"cd D:\pdf2xml");
p.StandardInput.WriteLine("d:");
use System.IO.Directory.SetCurrentDirectory
instead
You may also Check this
processStartInfo .WorkingDirectory = @"c:\";
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.