![]() |
![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
| Welcome to Windows Vista Forums. Our forum is dedicated to helping you find solutions with any problems, errors or issues you are experiencing with Windows Vista. The Vista forum also covers news and updates and has an extensive Windows Vista tutorial section that covers a wide range of tips and tricks. |
| |||||||
![]() |
| |
| | #1 (permalink) |
| | making a process asynchronous? Hi, I have a service that is starting a process, I'm tracking what each of them is doing by writing to the eventlog. it seems that the process is waiting for my service to be finished with what it' does, because it does not write to the eventlog until all of the service eventlog events have been written, even though the process has its event log writing take place at the beginning of the process starting, and the service still has about 20 event log entries it should write when it starts the process, the bit of code starting the process are: processtime=25000; pid = processtarter(Unexpandedcommand, specificformatprocess,processtime); public static int processtarter(string pArgs, string pName, int processtime) { 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(); do { try { if (!nProcess.HasExited) { nProcess.WaitForExit(3000); } } catch(Exception a){} } while (nProcess.TotalProcessorTime.Ticks < processtime); return nProcess.Id; } I have also tried to make the current thread sleep while the nProcess has not exited but that doesn't seem to help. The process is being called correctly, and passed the correct arguments but the service isn't waiting for the process to finish. |
My System Specs![]() |
![]() |
| Thread Tools | |
| |
Similar Threads | ||||
| Thread | Forum | |||
| Asynchronous Processing | PowerShell | |||
| asynchronous serial i/o | .NET General | |||
| new process should be asynchronous | .NET General | |||