예제 #1
0
        public static void ExecuteCommand(string Command, ISynchronizeInvoke isi, bool wait)
        {
            string cmdText = Command;

            if (DisplayFilter != null)
            {
                cmdText = DisplayFilter(cmdText);
            }
            Trace.WriteLine("executing command: " + cmdText);
            ProcessCaller processCaller;

            processCaller                 = new ProcessCaller(isi);
            processCaller.FileName        = @"cmd.exe";
            processCaller.Arguments       = "/C " + Command;
            processCaller.StdOutReceived += processCaller_StdOutReceived;
            processCaller.StdErrReceived += processCaller_StdOutReceived;
            processCaller.Start();
            if (wait)
            {
                processCaller.WaitUntilDone();
            }
        }