new process should be asynchronous
am 31.03.2008 15:55:41 von bryan rasmussenHi,
I have a process I'm starting that seems to be waiting for its parent
process to stop, I would like it to be asyncronous:
here's the relevant code:
int pid;
pid = processtarter(Unexpandedcommand,
specificformatprocess);
eventLogger.WriteEntry("started external process:" +
specificformatprocess);
Process newRender = Process.GetProcessById(pid);
int thisprocess = 1000;
if (tracksetting == 1)
{ eventLogger.WriteEntry("processtime" + processtime.ToString()); }
do
{
try
{
if (!newRender.HasExited)
{
newRender.WaitForExit(3000);
}
}
catch(Exception a){}
} while (newRender.TotalProcessorTime.Ticks <
processtime);
newRender.Close();
and the processstarter code is:
public static int processtarter(string pArgs, string pName) {
Process nProcess = new Process();
nProcess.StartInfo.WindowStyle =
ProcessWindowStyle.Normal;
nProcess.StartInfo.CreateNoWindow = false;
nProcess.StartInfo.UseShellExecute = false;
nProcess.StartInfo.Arguments = pArgs;
nProcess.StartInfo.FileName = pName;
nProcess.Start();
return nProcess.Id;
}