winform窗体中,有两个button按钮,click事件中一个A按钮负责调用cmd命令(已调用成功),另一个B按钮负责判断cmd命令执行完毕.请问B按钮如何判断,谢谢.

解决方案 »

  1.   

      System.Diagnostics.Process.WaitForExit(); 看看这个方法
      

  2.   

    其实是A按钮负责调用cmd命令转换视频成flv
    B按钮负责判断cmd命令完全转换完后自动上传视频.
    问题是现在我不知道它这个cmd命令什么时候转换完呢.不转换完我没法上传.
    A按钮的代码是
     private void ButtonA_Click(object sender, EventArgs e)
            {
                this.ChangeView();          
            }
     
            private void ChangeView()
            {
                stnameflv = stname + ".flv";
                string str = @""+fileName+" "+stnameflv+"";           
                RunFFMpeg(str);
            }
            //运行FFMpeg的视频解码,
            public void RunFFMpeg(string strCmd)
            {
                //创建并启动一个新进程
                Process p = new Process();
                //设置进程启动信息属性StartInfo,这是ProcessStartInfo类,包括了一些属性和方法:
                p.StartInfo.FileName = @"F:\ffmpeg.exe";  //程序名
                p.StartInfo.Arguments = " -i " + strCmd; //执行参数
                p.Start();           
            }        //运行Cmd.exe执行Dos 命令,并返回执行结果
            public string RunCmd(string command)
            {
                //创建并启动一个对进程
                Process p = new Process();            //Process类有一个StartInfo属性,这是ProcessStartInfo类,包括了一些属性和方法,例如:
                p.StartInfo.FileName = "cmd.exe"; //程序名
                p.StartInfo.Arguments = " /c " + command; //执行参数
                p.StartInfo.UseShellExecute = false; //关闭Shell的使用
                p.StartInfo.RedirectStandardInput = true; //重定向标准输入
                p.StartInfo.RedirectStandardOutput = true; //重定向标准输出
                p.StartInfo.RedirectStandardError = true; //重定向错误输出
                p.StartInfo.CreateNoWindow = true; //设置不显示窗口              p.Start();           
                p.WaitForExit();  
                return p.StandardOutput.ReadToEnd(); //从输出流取得命令执行结果  
            }WaitForExit();  我已经加上了,但是现在的问题是不管用,我的B按钮的click事件里怎么判断它完全输出完毕呢
      

  3.   

    变换一个方式,在cmd中指定一个存放路径,然后在文件夹改变一事件中写上你的上功能
      

  4.   

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    指定一个存放路径这个会
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    在文件夹改变一事件中写上你的上功能??????这个是怎么解?文件夹改变一事件但如果cmd还没有转换完呢