使用退出代码 -1073741819 在 IIS 10 上调用可执行文件
Call executable on IIS 10 with exit code -1073741819
我想从 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();
-1073741819是0xC0000005
,即ERROR_ACCESS_DENIED。 IIS 没有调用.exe 文件的权限。
I gave full rights for the user of the application pool in the folder
不知道你怎么样。但是最好在文件夹security 属性里面加上IIS APPPOOL\pool name
,设置完全控制权限
如果还是报这个错,请尝试更换应用程序池标识。 administrator权限最高,尝试换成administrator身份
我想从 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();
-1073741819是0xC0000005
,即ERROR_ACCESS_DENIED。 IIS 没有调用.exe 文件的权限。
I gave full rights for the user of the application pool in the folder
不知道你怎么样。但是最好在文件夹security 属性里面加上IIS APPPOOL\pool name
,设置完全控制权限
如果还是报这个错,请尝试更换应用程序池标识。 administrator权限最高,尝试换成administrator身份