我开发了一个 Web 应用程序,需要在服务器端运行 .exe 来执行某些任务。我在 Visual Studio 的内置 Web 服务器下工作得很好,但是在将它移到 IIS 8(64 位)时它会失败,因为 .exe 没有运行。
我了解默认情况下,应用程序池在无法生成桌面窗口的用户帐户下运行,因此我在服务器计算机上创建了一个帐户以供应用程序运行,但这没有任何效果。
我还检查了“处理程序映射”部分下的“编辑功能权限”,并确保它具有“执行”权限。
这在 IIS 6 下很简单,在 IIS7/8(64 位)中发生了什么变化?如果它有助于我的应用程序是基于 .NET 的并且可执行文件是使用“Process.Start”运行的?
最佳答案
我终于找到了为什么这不起作用,并且有一个简单的解决方案。基本上在 AppPool 高级设置中有一个“启用 32 位应用程序”选项,需要按照以下设置为 True 才能运行 32 位控制台应用程序:
关于.net - 在 IIS 8 64 位下运行可执行文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16103138/