如何从 Codesoft 解决异常:“检索 COM 类工厂...失败...80080005 服务器执行失败”?

Posted

技术标签:

【中文标题】如何从 Codesoft 解决异常:“检索 COM 类工厂...失败...80080005 服务器执行失败”?【英文标题】:How can I resolve exception: "Retrieving the COM class factory...failed...80080005 Server Execution failed" from Codesoft? 【发布时间】:2020-10-30 15:31:58 【问题描述】:

请提供有关此错误的任何建议或故障排除提示。

我在一家小型医疗研发 + 制造公司工作,我们在 Windows 7 和 Windows 10 机器上安装了许多 Codesoft 2012、2015 和 2018。 Codesoft 安装在本地,每个实例都有自己的许可证,而不是从服务器运行。我们有一个内部应用程序,由不再在这里的人开发(C# .NET VS2013),我们运行它使用 Codesoft API 进行标签打印。我对我们的程序进行了一些小的修改(与 Codesoft 无关)并构建和部署了它(如果重要,使用 InstallShield 单一 setup.exe)。之前我们没有这个问题,但是在某些PC上的这个构建上,当Codesoft API启动时,有120秒的延迟,并返回以下异常:

应用程序初始化失败并出现异常:引发异常 初始化期间:检索组件的 COM 类工厂 由于以下错误,CLSID XXXX 失败:80080005 服务器 执行失败(HRESULT 异常:0x80080005 (CO_E_SERVER_EXEC_FAILURE))。

这是返回异常的代码行:

Codesoft = new Tkx.Lppa.Application();

当然这只是启动API,没什么特别的,是Codesoft API的第一个使用点。 Lppa.exe(Codesoft 程序)确实会在任务管理器中出现 2 分钟。编辑(它出现在 Windows 7 和 10 以及 Codesoft 2015 和 2018 上,但从未出现在 Codesoft 2012 上。在带有 Codesoft 2018 的 Windows 7 32 位机器上,它工作了一段时间,然后也开始显示错误。)手动启动 Codesoft 工作正常。在使用 Codesoft 2012(我们拥有开发许可证的版本)的 Windows 10 机器上工作时,我在开发过程中从未见过这个问题。我已经联系了 Codesoft (Teklynx) 技术支持,但他们没有提供帮助(API 的电话支持被拒绝,只有电子邮件,还没有回复)。

我尝试了一些故障排除:

重新启动并重新安装我们的应用程序。 回滚了我认为可能会产生影响的代码更改并重新构建。 仅针对 x86 平台构建。 暂时删除了所有防病毒软件(系统日志分析未发现任何明显问题)。 重新安装 Codesoft。 根据 [https://support.microsoft.com/en-us/help/870655/you-may-receive-an-error-code-80080005-server-execution-failed-error-m][ 1] 根据Server execution failed (Exception from HRESULT: 0x80080005 (CO_E_SERVER_EXEC_FAILURE)) 通过组件服务设置用户和权限 SFC 扫描(没有问题)和 DISM 扫描(2 个损坏的包,用于拼写和连字符,但不知道这是否相关)Server execution failed (Exception from HRESULT: 0x80080005 (CO_E_SERVER_EXEC_FAILURE))

我可能遗漏了上述链接中的某些内容,我可能会返回并重试。 编辑 下一步:在 Win 7 机器上设置开发环境并重建。

【问题讨论】:

您可以尝试 sysinternals 中的 procmon,查看来自 codesoft 进程的注册表和磁盘访问(您可以按进程名称过滤),但最终,这似乎是 CodeSoft 问题,它们应该对您有所帮助。 【参考方案1】:

解决了。我在构建中使用了 2012 版的 API lppanet.dll。这就是为什么它在 2012 年而不是其他版本上工作的原因(尽管 2018 年的不一致操作很奇怪)。使用更高级别的版本有效。我在 2012 年只拥有开发许可证(认为这是以前使用过的版本,其实不是),并且不知道它已经更新并且不向前兼容。

【讨论】:

以上是关于如何从 Codesoft 解决异常:“检索 COM 类工厂...失败...80080005 服务器执行失败”?的主要内容,如果未能解决你的问题,请参考以下文章

如何在CODESOFT中自定义删除文档备料

怎样用CODESOFT打印连续的条码标签?

关于导出Excel出现异常的解决办法。:System.UnauthorizedAccessException: 检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000

怎样对CODESOFT中的条形码进行黑白转换

CodeSoft和BarTender打印的调用

codesoft7都可以做啥字体标签