System.Diagnostics.Process not working !! please help

N

Nurit N

I wrote that post also on other newsgroup but didn't get any answers.

So, I'm trying it here. Maybe it's the right place for it...

I have created a very simple batch file (echo hello world) and was trying to
retrieve the standard output but every time I run the code it returns
ExitCode as 1.

The batch file runs just fine from command line.

There is no Win32Exception (no ERROR_FILE_NOT_FOUND and no
ERROR_ACCESS_DENIED)

Also strOutput and strError returns empty.

What ExitCode1 means?

Am I missing on something?

Here is the code:

try
{
System.Diagnostics.Process MFGProc = new System.Diagnostics.Process();
MFGProc.StartInfo.FileName = strMfgWorkDir + strMfgBatFile;
MFGProc.StartInfo.WorkingDirectory = strMfgWorkDir;
MFGProc.StartInfo.UseShellExecute = false;
MFGProc.StartInfo.RedirectStandardError = true;
MFGProc.StartInfo.RedirectStandardOutput = true;
MFGProc.Start();

string strOutput = MFGProc.StandardOutput.ReadToEnd();
string strError = MFGProc.StandardError.ReadToEnd();
MFGProc.WaitForExit();

if (MFGProc.ExitCode == 0)
{
Ok = true;
}
else
{
strErrorMsg = " Running failed. Description: " + strError;
}
}
catch (Win32Exception e)
{
strErrorMsg = "W32 Error:" + e.NativeErrorCode.ToString() + "." +
e.Message ;
}

catch (Exception err)
{
// Process other errors here
strErrorMsg = ("RunMFGCimSession Other error. ErrorMessage: " +
err.Message );
}

Thanks

Nurit
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,776
Messages
2,569,603
Members
45,189
Latest member
CryptoTaxSoftware

Latest Threads

Top