放到IIS里调湿了。没有出错信息,就是执行了但是DOS命令并没有执行,也没有异常。 操作的是FTP下面的文件(2003SERVER也是FTP SERVER)。是不是FTP对文件有保护不允许操作?创建计划任务用的 "SCHTASKS"命令也是没有异常但是就是没有执行。 自己在本机编译没问题,挂上IIS就不行了。请大家帮忙看看 RunDosCommand("COPY " + TBFrom.Text + " " + TBTo.Text);     public static string RunDosCommand(string command) 
    { 
        Process process = new Process(); 
        process.StartInfo.FileName = "cmd.exe"; 
        process.StartInfo.UseShellExecute = false; 
        process.StartInfo.RedirectStandardInput = true; 
        process.StartInfo.RedirectStandardOutput = true; 
        process.StartInfo.RedirectStandardError = true; 
        process.StartInfo.CreateNoWindow = false; 
        process.Start(); 
        process.StandardInput.WriteLine(command); 
        process.StandardInput.WriteLine("exit"); 
        return process.StandardOutput.ReadToEnd(); 
    }

解决方案 »

  1.   

    本机编译的时候用的是管理员的权限,IIS的匿名用户的权限很低的.
      

  2.   

    想要使用cmd.exe可以提高匿名用户的权限,不过建议你最好不要这么做,权限过高对网站不是什么好事.
      

  3.   

    感觉是process调用写法有问题
    直接用做参数不行么?用Start(程序名,参数)方法的重载看看
      

  4.   

    顺便问一下,DOS的CMD都执行什么操作?
    不用CMD不能解决吗?
      

  5.   

    因为需要调用到计划任务, c#本身我没有找到好的方法去执行windows的计划任务,只能借助SHTASKS DOS命令去执行。 现在遇到的问题是DOS命令都不能有效地执行,大家告诉我是匿名用户权限太低造成的,我准备直接用PROCESS START方法直接使用看看 。