大家好:我遇到一个问题,就是我在 运行 菜单 里面输入命令 : c:\python26\python26.exe D:\Prelaunch\local.package.py 11可以直接运行。可是我在asp.net程序中这样写(如下代码)就执行不了,请大家帮忙看看是哪的问题,谢谢大家了。ProcessStartInfo start = new ProcessStartInfo(@"c:\python26\python26.exe"); start.Arguments = @"D:\Prelaunch\local.package.py 11";
start.CreateNoWindow = false;
start.RedirectStandardOutput = true;
start.RedirectStandardInput = true;
start.UseShellExecute = false;
Process p = Process.Start(start);

解决方案 »

  1.   

    static void Main(string[] args)
            {
                Process ps = new Process();
                ps.StartInfo.FileName = "cmd.exe";
                ps.StartInfo.RedirectStandardOutput = true;
                ps.StartInfo.RedirectStandardInput = true;
                ps.StartInfo.CreateNoWindow = true;
                ps.StartInfo.UseShellExecute = false;
                ps.StartInfo.StandardOutputEncoding = System.Text.Encoding.Default;
                ps.StartInfo.RedirectStandardError = false;
                ps.OutputDataReceived += new DataReceivedEventHandler(ps_OutputDataReceived);            ps.Start();
                ps.BeginOutputReadLine();
                ps.StandardInput.WriteLine(@"dir c:\");
                ps.StandardInput.Close();
                ps.WaitForExit();
                ps.Close();
            }
            static void ps_OutputDataReceived(object sender, DataReceivedEventArgs e)
            {
                if (e.Data == null)
                {
                    return;
                }
                Console.Write(e.Data+"\n");
            }
      

  2.   

    asp.net,可能没有这个权限
    可以在winform里试试
      

  3.   

    谢谢 2位了,我之前也感觉是权限的问题,可是一直都不敢相信,net 也不报个错误,刚做了个控制台程序就可以跑了。好郁闷。