为什么我的应用程序在我的电脑上能运行但在其他电脑上不能运行?

3

我正在使用C# Windows窗体开发一个应用程序,用于使用生物识别设备注册员工的记录。我已经设置并发送到我的另一台计算机进行测试,以查看它是否能在其他设备上正常工作。除了直接与生物识别设备相关的功能外(请注意,在我的计算机上功能完全正常),一切都运行良好。

我已经逐个检查了每个dll,并没有注意到任何缺失的内容。

错误是以下内容:

System.Runtime.InteropServices.COMException (0x80040154):由于以下错误,无法为CLSID {00853A19-BD51-419B-9269-2DABE57EB61F}组件检索COM类工厂: 80040154 类未注册 (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))。

打印错误信息: https://istack.dev59.com/x5vk2.webp


4
建议:获取CLSID并在开发机上搜索Regedit。 CLSID将引导您到入口点,这将是需要在其他计算机上安装的dll,可以使用设置安装程序或通过命令行注册来完成安装。 - Simon Wilson
1
也许?--> https://dev59.com/9G445IYBdhLWcg3w3Nwf - InUser
2
我在谷歌上搜索了CLSID并找到了这篇 SO帖子。他们有相同的问题,相同的技术等。 - JayV
1个回答

1
这看起来像是您在电脑上注册了COM DLL,但在另一台电脑上没有进行注册。因此,即使您开发的软件没有进行任何更改,它也会失败。SDK包通常有register.bat或类似的文件。找到它并运行批处理文件,然后您的软件就可以正常工作了。

1
我已经解决了这个问题,正如你所说的那样,我将SDK包传输到另一台计算机上并运行了register.bat,之后它就正常工作了。我没有关闭问题,因为我不知道怎么做,哈哈,我在这里还是新手。但无论如何,还是非常感谢你。 - Rubs Bieira

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接