我正在按照本教程(https://atgsupportcentral.motorolasolutions.com/content/emb/docs/manuals/14978403a.pdf(,创建了一个简单的Windows窗体,并成功地可以在扫描仪上调试它(它是一个符号MC3000(。但是,我在尝试初始化CCoreScannerClass时遇到异常:
//Instantiate CoreScanner Class
CCoreScannerClass cCoreScannerClass = new CoreScanner.CCoreScannerClass();
确切的错误消息是这样的:
"由于以下错误,无法创建具有 CLSID '{9F8D4F16-0F61-4A38-98B3-1F6F80F11C87}' 的 COM 对象:0x80040154。
任何人都可以提供一些帮助吗?由于这是一个COM异常,我认为这是因为该类未注册?关于如何解决这个问题的任何想法?
非常感谢。
我通过从摩托罗拉的网站下载 .NET 的 EMDK 来让它工作:
https://portal.motorolasolutions.com/Support/US-EN/Resolution?solutionId=88177&productDetailGUID=f5563b1ca4151410VgnVCM10000001c7b00aRCRD&detailChannelGUID=a0bde8cea8151410VgnVCM10000001c7b00aRCRD
0x80040154
是一个错误,正如您提到的,与未注册的COM类有关,这意味着COM无法在Windows注册表中找到类工厂。可以使用C:Windowssystem32regsvr32
来注册缺少的 SDK DLL。
安装扫描仪管理服务后,我让它工作https://portal.motorolasolutions.com/Support/US-EN/Resolution?solutionId=87864&productDetailGUID=f0acd085364cf310VgnVCM10000081c7b10aRCRD&detailChannelGUID=84a76e203763e310VgnVCM1000000389bd0aRCRD