在工作中构建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启动新进程的最佳方法是什么,需要在保持安全性的同时通过命令提示符传递参数?
答案 0 :(得分:5)
授予对运行IIS(通常为ASPNET)的用户访问目录c:\pdftohtml\
的权限,以便修复它。