我正在把这头发拉出来......
我有几年前使用AutoItX构建的遗留应用程序 - 一切正常。
现在是尝试更新应用程序的时候了,所以我已经将它升级到VS2012 / .NET4,而我根本无法获得对AutoItX库的引用。
我已经安装了应用程序,已经使用regsvr32注册了dll,尝试了引用本身的每个属性设置组合(Embed Interop Types / Isolated),但没有快乐。
每当我尝试创建AutoItX3对象时,我一直得到的错误是:
使用CLSID检索组件的COM类工厂 {1A671297-FA74-4422-80FA-6C5D8CE4DE04}由于以下原因而失败 错误:80040154未注册类(HRESULT异常: 0x80040154(REGDB_E_CLASSNOTREG))。
我是64位计算机上的问题吗?我不是试图使用64位DLL版本。
答案 0 :(得分:3)
好的解决方案是:
出于某种原因,这完全解决了这个问题。
参考:How to use a 32 bit COM object on Windows Server 2008 (works on 2008 R2 but non 2008)
答案 1 :(得分:1)
Hainesy,
你使用的是x64-Windows吗? 当我开始看COM时,我遇到了同样的问题。 如果是这样,你应该尝试在HKEY_LOCAL_MACHINE \ SOFTWARE \ WoW6432Node \ Classes ...中注册你的课程。
试一试!
问候语