Beispiel #1
0
        private bool WaitForProcessState(string processName, int millisecond, RCProcess.ProcessState state)
        {
            long ticks = DateTime.Now.Ticks;

            for (;;)
            {
                RCProcess rcprocess = Base.Client[processName];
                if (rcprocess == null || rcprocess.State == RCProcess.ProcessState.Crash)
                {
                    break;
                }
                if (rcprocess.State == state)
                {
                    return(true);
                }
                if (millisecond != -1 && DateTime.Now.Ticks - ticks > (long)(millisecond * 10000))
                {
                    return(false);
                }
                Thread.Sleep(1000);
            }
            return(false);
        }
Beispiel #2
0
 public StateChangeProcessMessage(string name, RCProcess.ProcessState state, DateTime changedTime)
 {
     this.Name        = name;
     this.State       = state;
     this.ChangedTime = changedTime;
 }
Beispiel #3
0
 internal ProcessStateEventArgs(RCProcess targetProcess, DateTime changedTime, RCProcess.ProcessState oldState)
 {
     this.TargetProcess = targetProcess;
     this.ChangedTime   = changedTime;
     this.OldState      = oldState;
 }