VS2008 在64位的系统(XP/Vista/Win7均是)中编译ArcEngine(9.3SP1)并运行时提示:
没有注册类 (异常来自 HRESULT:0x80040154 (REGDB_E_CLASSNOTREG))
原因:ArcEngine9.3没有原生支持64位,而是以32位兼容方式运行
解决办法:在项目属性里设置“生成”=>“目标平台”为x86而不是默认的ANY CPU.
ESRI官方也是这么解决的:
http://support.esri.com/index.cfm?fa=knowledgebase.techarticles.articleShow&d=33000
Bug: Error: Class not registered(Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)
| Article ID: | 33000 |
|---|---|
| Bug Id: | NIM007516 |
| Software: | ArcGIS Engine Runtime 9.2, 9.3 |
| Platforms: | Windows 2000, XP |

在64位Windows系统中使用VS2008/2010编译ArcEngine 9.3SP1时可能会遇到类未注册错误(HRESULT:0x80040154)。原因是ArcEngine本身不原生支持64位。解决方法是在项目属性中将目标平台设置为x86,而非默认的ANY CPU。按照此设置重新编译解决方案,问题即可解决。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



