gpt4 book ai didi

c# - 从 COM .dll 获取错误 '80070002'

转载 作者:行者123 更新时间:2023-11-28 02:26:17 25 4
gpt4 key购买 nike

我正在将经典 ASP 站点从 Windows 2000 服务器迁移到 Windows 2008(开发版和产品版)。我有一个在 .NET 1.1 中创建的 .dll。当位于此 securityUtility.asp 中的 JScript 中创建的函数使用 dll 创建 ActiveX 对象时,会发生此错误。该行如下所示:

函数 getProfileFromLdap(用户, pw){

var aClass, aProfile

aClass = new ActiveXObject("com.co.comp.security.ldap.LDAPLogin");...}

发生的错误是:错误“80070002”E:\SITES\WWW-COMPANYSITE-COM\SITE\BINS../../siteInc/securityUtility.asp,第 850 行

我运行了以下命令在注册表中注册 dll:

“C:\Windows\Microsoft.NET\Framework\v1.1.4322\RegAsm”coSecurity.dll/tlb:coSecurity.tlb

我不知道这是否值得一提,但有一次该网站在开发中运行良好,但当我尝试将该网站转移到生产环境时却出错了。很久以前我就已将该站点移至新的开发服务器(Windows 2008)。我做了笔记,所以当我将其投入生产时,我知道我采取了哪些步骤。我想也许我忘记记录一个步骤,所以为了尝试追溯我所做的事情,我卸载了 .dll 并执行了我记录的步骤。它现在在开发中被破坏了,但在某一时刻它是有效的。

我不确定是否值得一提的另一件事是该站点是新开发服务器上的第一个站点。 .NET 1.1 的安装先于任何其他框架。 4.0和2.0是事后安装的。在生产服务器上首先安装 4.0,然后安装 1.1。不确定这是否重要。

  • 当开发站点运行时,我已确认这些项目位于注册表将它们与旧产品和新开发产品进行比较服务器和新产品

  • 在旧的生产服务器上,GAC 中没有任何内容

  • coSecurity.dll 与 securityUtility.asp 位于同一文件中
    (代码所属的页面)。

  • 应用程序池的“启用 32 位应用程序”为 true对于这两个新环境

  • “每个人”都被授予对 .dll 的完全权限

我不知道我错过了什么!

最佳答案

这就是我最终为那些像我一样用头撞墙的人所做的:

  • 以管理员身份打开命令提示符
  • 导航到 dll 的存储位置
  • 使用以下方式取消注册 dll“C:\Windows\Microsoft.NET\Framework\v1.1.4322\RegAsm”/ucoSecurity.dll
  • 使用以下命令重新注册了 dll“C:\Windows\Microsoft.NET\Framework\v1.1.4322\RegAsm”coSecurity.dll/代码库
  • 您会收到重高潮警告,但也应该收到消息“类型注册成功”

之后我就不再收到错误了!

关于c# - 从 COM .dll 获取错误 '80070002',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14882170/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com