允许IIS运行cmd命令

时间:2012-05-13 07:39:43

标签: c# asp.net-mvc-3 process iis-6

在工作中构建ASP.NET MVC3应用程序,我正在尝试使用必须通过命令提示符启动并传递参数的程序。

目前我正在......

System.ComponentModel.Win32Exception (0x80004005): Access is denied 
at System.Diagnostics.Process.StartWithShellExecuteEx(ProcessStartInfo startInfo) 
at System.Diagnostics.Process.Start() 
at System.Diagnostics.Process.Start(ProcessStartInfo startInfo)

这只需要网站的一个部分,我不确定允许IIS(6)在保持安全性的同时实现这一目标的最佳流程。

我认为这不相关,但以下是我用来启动Process()的代码

try {
    ProcessStartInfo startInfo = new ProcessStartInfo();
    startInfo.FileName = @"C:\pdftohtml\pdftohtml.exe";
    startInfo.Arguments = "-c " + NewsletterPath + @"\" + fileName + ".pdf";

    Process.Start( startInfo );
} catch( Exception ex ) {
    return ex.ToString();
}

问题简而言之:

允许IIS6启动新进程的最佳方法是什么,需要在保持安全性的同时通过命令提示符传递参数?

1 个答案:

答案 0 :(得分:5)

授予对运行IIS(通常为ASPNET)的用户访问目录c:\pdftohtml\的权限,以便修复它。