System.Diagnostics.Process pro  =  new  System.Diagnostics.Process();       
    pro.StartInfo.FileName= "cmd.exe ";   
    pro.StartInfo.WindowStyle=System.Diagnostics.ProcessWindowStyle.Normal;       
    pro.StartInfo.CreateNoWindow  =   true;       
    pro.StartInfo.UseShellExecute   = false;       
    pro.StartInfo.RedirectStandardInput =  true;       
    pro.StartInfo.RedirectStandardOutput =  true;       
    pro.Start();       
    pro.StandardInput.WriteLine( "exp uid/pwd@database   file=( 'XXX.dmp ')  full=y " ); 
    pro.StandardInput.( "exit "); 
    pro.StandardInput.WriteLine("exit");
    pro.WaitForExit();
    Close();      运行后可以成功备份数据,但是不显示平时在DOS下执行exp.exe时在屏幕上输出的详细内容,像导出的表名,导出了多少行等等。大虾等帮忙看看。再次提取置顶,希望各位能帮忙解决啊

解决方案 »

  1.   

    pro.StandardInput.( "exit ");  这也可以?
      

  2.   

    string output = pro.StandardOutput.ReadToEnd();
      

  3.   

    我要的是屏幕显示出来。不是得到结果   如果是这样   生成的log里就有全部信息不过还是 谢谢你 hoken2020856
      

  4.   

    pro.StartInfo.CreateNoWindow = true;   
    改为
    pro.StartInfo.CreateNoWindow = false;