示例#1
0
        private void OnProcessStateChanged(object sender, ProcessStateChangedEventArgs e)
        {
            Debug.WriteLine(DateTime.Now.ToLongTimeString() + " " + e);
            logControl.AddLogMessage(e.ToString());

            if (e.StateChangeType == ProcessStateChangedEventArgs.StateChangeTypes.Created)
            {
                _processManagerTester.RunTest(Process.GetProcessById(e.ProcessProxy.Id));
            }
        }
示例#2
0
        /// <summary>
        /// The manager on process state changed.
        /// </summary>
        /// <param name="sender">
        /// The sender.
        /// </param>
        /// <param name="processStateChangedEventArgs">
        /// The process state changed event args.
        /// </param>
        private void ManagerOnProcessStateChanged(object sender, ProcessStateChangedEventArgs processStateChangedEventArgs)
        {
            switch (processStateChangedEventArgs.Action)
            {
            case ProcessStateChangedEnum.StandardErrorMessage:
                Console.WriteLine(processStateChangedEventArgs.Data);
                break;

            case ProcessStateChangedEnum.StandardOutputMessage:
                Console.WriteLine(processStateChangedEventArgs.Data);
                break;
            }
        }
示例#3
0
        /// <summary>
        /// The instance_ process state changed.
        /// </summary>
        /// <param name="sender">
        /// The sender.
        /// </param>
        /// <param name="e">
        /// The e.
        /// </param>
        private static void instance_ProcessStateChanged(object sender, ProcessStateChangedEventArgs e)
        {
            var instance = (CustomizedChildProcessInstance)sender;

            switch (e.Action)
            {
            case ProcessStateChangedEnum.IpcChannelAvail:
                Console.WriteLine("Child Process IpcChannelAvail");
                break;

            default:
                Console.WriteLine("Child Process State Changed: " + e.Action);
                break;
            }
        }
示例#4
0
        private async void OnProcessStateChangedAsync(object sender, ProcessStateChangedEventArgs e)
        {
            if (_appServiceBridgeManager.BackgroundProcessLaunched)
            {
                string responseValue = await _appServiceBridgeManager.SendRequestToBackgroundProcessAsync(
                    Keys.KeyProcessDetailsByWindowHandleRequest, e.ProcessProxy.MainWindowHandle.ToString());

                ProcessProxy processProxy = ProcessProxy.FromJson(responseValue);

                if (processProxy != null)
                {
                    System.Diagnostics.Debug.WriteLine("OnProcessStateChangedAsync: " + e + " " + processProxy);
                    logControl.AddLogMessage("Process state changed: " + e.ToString() + " " + processProxy.ToString());
                }
            }
            else
            {
                System.Diagnostics.Debug.WriteLine("OnProcessStateChangedAsync: " + e);
                logControl.AddLogMessage("Process state changed: " + e.ToString());
            }
        }
示例#5
0
        /// <summary>
        /// The manager_ process state changed.
        /// </summary>
        /// <param name="sender">
        /// The sender.
        /// </param>
        /// <param name="e">
        /// The e.
        /// </param>
        private static void ManagerOnProcessStateChanged(object sender, ProcessStateChangedEventArgs e)
        {
            var manager = (CustomizedChildProcessManager)sender;

            Console.WriteLine("Parent Process State Changed: " + e.Action);
            switch (e.Action)
            {
            case ProcessStateChangedEnum.StandardOutputMessage:
                Console.WriteLine("Child Msg: " + e.Data);
                break;

            case ProcessStateChangedEnum.StandardErrorMessage:
                Console.WriteLine("Child Err: " + e.Data);
                break;

            case ProcessStateChangedEnum.IpcChannelAvail:
                Console.WriteLine("Parent IPC Channel Available");
                var ipcChannel = (IExtendedParentChildIpc)e.ChildProcess.ParentChildIpc;
                Console.WriteLine("Sending Custom Message at:" + DateTime.Now);
                ipcChannel.SendCustomMessageToChild("Hello From Parent");
                Console.WriteLine("Finish Sending Custom Message at:" + DateTime.Now);
                break;
            }
        }