【发布时间】:2012-04-30 12:17:44
【问题描述】:
我们有一个工业系统,可以使用提供给我们的一些 C++ DLL 进行接口。我编写了一个 .NET 包装器来控制工业系统,然后将此 .NET 包装器捆绑到一个 ASP .NET Web 应用程序中,以便我们可以通过 Web 控制系统。
当我使用 ASP .NET 开发服务器在 Visual Studio 中运行/调试时,一切正常。当我部署到本地 ISS 服务器时,我收到来自 C++ DLL 的错误,(有人告诉我)这意味着存在通信故障。
因为 IIS 应用程序和开发服务器在同一台机器上,一个工作而另一个不工作,我确信这是一个权限/安全错误。我花了几天时间摆弄应用程序池标识、ASP .NET 模拟、文件系统权限等,但无济于事。 (我也是一个 IIS 菜鸟,这没有帮助。)
所以,这里是妙语:
有人能解释一下如何(如果可能的话)设置一个 IIS ASP .NET 应用程序,以便它可以在对本地计算机的完全(全力以赴、枪林弹雨)访问的情况下运行吗?我想确保 IIS 不会因任何事情而阻碍应用程序。
【问题讨论】:
-
是的。 Marshal.GetLastWin32Error() 返回 2。这对应于“找不到文件”,我认为这意味着(基于文件的?)IPC 无法启动。
标签: asp.net .net security iis permissions