Event Args for above delegate
Inheritance: System.EventArgs
 void pc_StdOutReceived(object sender, DataReceivedEventArgs e)
 {
     if(MessageReceived != null)
     {
         ProcessCaller pc = (ProcessCaller)sender;
         ServerType st = GetServerType(pc.FileName);
         String args = pc.Arguments;
         MessageReceived(this, new MessageEventArgs(MessageType.Message, st, args, e.Text));
     }
 }
        void pc_StdErrReceived(object sender, DataReceivedEventArgs e)
        {
            ProcessCaller pc = (ProcessCaller)sender;

            Server s = FindServer(pc);
            if (s != null)
            {
                s.FinishedTime = DateTime.Now.Ticks;
                s.IsRunning = false;
                s.IsCrashed = true;

                if (MessageReceived != null)
                {
                    MessageReceived(this, new MessageEventArgs(MessageType.STDErr, s.type, s.args, e.Text));
                }
            }
            else
            {
                if (MessageReceived != null)
                    MessageReceived(this, new MessageEventArgs(MessageType.STDErr, ServerType.None, pc.FileName, e.Text));
            }
        }