【问题标题】:Cannot create Server Object in Classic ASP无法在经典 ASP 中创建服务器对象
【发布时间】:2014-05-13 07:23:00
【问题描述】:

我刚开始在本地环境中使用经典 asp 设置现有项目,但遇到此错误

服务器对象错误“ASP 0177:800401f3” Server.CreateObject 失败

我收到错误的行如下:

Server.CreateObject("WebCache.SqlStream")

我在 Windows 7 机器上使用 IIS 7.5。

【问题讨论】:

    标签: asp-classic


    【解决方案1】:

    问题是 ProgId WebCache.SqlStream 未向 COM 注册,这可能有多种原因。

    • 最常见的原因是与 COM 组件关联的 DLL 文件未在服务器上注册,这可以使用 regsvr32.exe "fullpath\dllname.dll" 来完成

    • DLL 文件已注册但已被移动或存在权限问题(通常与读取相应的注册表项有关)。

    • 系统为x64 架构,ASP 应用程序在应用程序池中的32-bit mode 中运行。在这种情况下发生的情况是使用 64 位版本的 regsvr32.exe 注册 DLL,这会将 ProgId 放入 64 位注册表配置单元中。要解决此问题,您需要运行 regsvr32.exe 的 32 位版本。在 64 位 Windows Server 操作系统和 Windows Vista(或更高版本)中,可以在 %SystemRoot%\SysWOW64 中找到它,其中包含 Windows 系统文件的 32 位等效文件。

    在这篇 Microsoft 支持文章 - PRB: Server Object Error 'ASP 0177:80040154' Server.CreateObject 中还有一些关于检查内容的有用信息

    【讨论】:

    • 嗨,我在 Windows 注册表中搜索了“WebCache.SqlStream”,但没有找到任何相同的条目。你能告诉我应该在窗口中注册哪个 dll 吗?
    • @user3030342 这个组件是从哪里来的?你肯定有它的DLL吗?我可以在谷歌找到的唯一参考是一个旧的 ASP 网站,有人完全暴露在公众面前,但删除了 ASP ISAPI 过滤器 - damsinc.com/old_site/index.asp 它似乎是某种缓存组件,但除此之外我不知道。
    • @user3030342 我只能在 ASP 代码中找到指向此站点 Google 搜索 site:www.damsinc.com filetype:asp 的引用
    • @user3030342 我的猜测是这是一个为缓存而构建的定制组件,如果您无法访问 DLL,恐怕您会卡住,除非您可以追踪您正在使用的代码的原始所有者。
    • 对不起,这是一个第三方 DLL,没有在我的注册表中注册。感谢您的宝贵支持。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-02-21
    • 1970-01-01
    • 2015-05-21
    • 2023-03-10
    • 1970-01-01
    • 2011-12-05
    • 1970-01-01
    相关资源
    最近更新 更多