【问题标题】:c# deployment. application not working on some machines [closed]c#部署。应用程序无法在某些机器上运行 [关闭]
【发布时间】:2011-09-17 11:37:11
【问题描述】:

这是错误:

检索 CLSID 为 {56A9ADF8-604D-40B7-A696-990FCFAD1E46} 的组件的 COM 类工厂失败,原因是以下错误:80040154 未注册类(HRESULT 异常:0x80040154 (REGDB_E_CLASSNOTREG))。

【问题讨论】:

  • 堆栈溢出实际上并不是转储错误的地方。这个问题几乎完全没有上下文。

标签: c# deployment


【解决方案1】:

当您正在使用的 COM 对象在注册表中找不到时,就会发生这种情况。

你通常可以运行regsvr32 someDll.dll来注册COM dll。

64 位计算机: 确保您的 .exe 编译为 x86,以便在 64 位计算机上,它会在注册表中的正确位置查找 COM 注册。

【讨论】:

    【解决方案2】:

    看起来您的应用程序需要一个特定的 COM 组件,但您并没有随它一起发布,而且不知道它是否始终存在于目标计算机上。包含该组件并在分发您的应用程序时注册它,它应该可以正常启动。

    【讨论】:

      【解决方案3】:

      错误消息告诉您,CLSID 为 56A9ADF8-604D-40B7-A696-990FCFAD1E46 的 COM 类未在目标计算机上注册。

      为了解决这个问题,找出 CLSID 引用的对象,并确保它已安装并注册。

      【讨论】:

        【解决方案4】:

        该 ID 与名为 FaconServer 的 ActiveX 组件相关联。

        有这个问题的机器会不会缺少这个组件?会不会注册错了?

        【讨论】:

          猜你喜欢
          • 2014-09-10
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2020-12-22
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多