使用退出代码 -1073741819 在 IIS 10 上调用可执行文件

Call executable on IIS 10 with exit code -1073741819

提问人:Doe 提问时间:4/20/2022 更新时间:4/21/2022 访问量:62

问:

我想从 IIS 10 中托管的 Web 应用程序调用可执行文件。

当我使用 IIS Express 在本地运行我的应用程序时,一切正常,但在生产服务器上部署后,我只得到退出代码 -1073741819。

在产品服务器上,我为 exe 文件所在的文件夹中的应用程序池的用户提供了完全权限,但这也无法正常工作。

我是否必须为用户设置其他特殊权限?

这是我的代码......

ProcessStartInfo procStartInfo = new ProcessStartInfo(libreExecutable.FullName, argument);
procStartInfo.CreateNoWindow = true;
procStartInfo.UseShellExecute = false;
procStartInfo.WorkingDirectory = workingDirectory;
procStartInfo.RedirectStandardInput = true;
procStartInfo.RedirectStandardOutput = true;
procStartInfo.RedirectStandardError = true;

// This is empty with code -1073741819
process.StandardError.ReadToEnd();
Web IIS 可执行文件

评论


答:

1赞 Bruce Zhang 4/21/2022 #1

-1073741819 是 ,这意味着ERROR_ACCESS_DENIED。IIS 无权调用 .exe 文件。0xC0000005

我为文件夹中的应用程序池的用户授予了完全权限

我不知道你是怎么做到的。但最好添加文件夹安全属性并设置其完全控制权限。IIS APPPOOL\pool name

如果仍报告此错误,请尝试更改应用程序池标识。管理员具有最高权限,请尝试将身份更改为管理员。