我刚刚在 Windows 2008 上的 IIS7 安装中启用了 ASP Classic,并尝试将之前在 Windows 2003 上的 IIS6 上运行的 ASP 应用程序移动到 IIS7 服务器。我收到以下错误:
Server object error 'ASP 0177 : 800401f3'
Server.CreateObject Failed
/Includes/SessionInclude.asp, line 3
800401f3
SessionInclude.asp 第 3 行是:
set Session = server.CreateObject("SessionMgr.Session2")
我首先想到的是存在一些权限问题或需要注册 DLL,但我认为 SessionMgr 作为一个基本函数应该已经注册为默认函数?有人之前遇到过这个问题吗?能解释一下这个问题吗?或者我需要注册 DLL?
答案1
您的代码未使用 ASP 内置的某些内容(因此需要像这样实例化它)。它是默认 ASPSession
对象的替代品,允许与 ASP.NET 共享会话状态。您显然需要找到 SessionMgr.dll(或 SessionManager.dll)文件并在新服务器上注册它。
答案2
您可以尝试在 Classic .NET AppPool 中配置网站并确认是否有帮助。我还会运行 Process Monitor 并检查是否存在任何 ACCESS DENIED 或 FAILURES。
好消息是,您还可以使用失败请求跟踪来帮助您解决问题。