admin 管理员组文章数量: 1087139
2024年5月17日发(作者:3x3魔方公式图解)
关于在Win7 SP1操作系统下编译的ADO应用程序不能在比Win7 SP1版本低的操作系
统上运行,微软给出的解释和解决方案
Posted on 2011-09-11 09:15 Mr-Victor 阅读(99) 评论(2) 编辑 收藏
本文解决方案摘自:/kb/2517589
这几天一直在写一个股票软件,用的ACCESS来存储数据,用的ADO方式来操作数
据库,在自己机子上运行得好好的,在别人机子上就完全用不起,调试了很久才发现问题
锁定在hr = m_Instance(__uuidof(Connection));这条语句
上,这条语句是创建一个Connection对象,正确执行后是能创建的,但是在别人机子上
就是不能正确执行,弄了一天也没弄明白,后来跟一个朋友聊天,从他那里得知原来在
Win7 SP1的操作系统上编译的ACCESS应用程序不能在比Win7 SP1的低版本操纵系统
上运行,而别人的机子恰好都不是Win7 SP1的操作系统,找到原因就好办了,一下是微
软给出的官方解释和解决办法。
症状:
请考虑下面的方案。在计算机上正在运行 Windows 7 Service Pack 1 (SP1) 或
Windows 服务器 2008 R2 SP 1 或具有 KB9823246 安装,您通过使用以下应用程序之
一重新编译 Microsoft ActiveX 数据对象 (ADO) 应用程序:
•
Microsoft Visual c + +
•
Microsoft Visual Basic for Applications (VBA)
•
Microsoft Visual Basic 6
•
Microsoft。NET 应用程序
在这种情况下,您发现应用程序不在级别较低的操作系统上运行。例如,它不会运行
Windows 7 的发行版、 Windows Vista 中,和其他早期的 Windows 版本。具体取决
于您的实施,您还会收到类似于下列内容之一的错误消息。(您可能收到其他错误消息。)
错误消息 1
REGDB_E_CLASSNOTREG (0X80040154)
错误消息 2
E_POINTER (0X80004003)
错误消息 3
E_NOINTERFACE (0X80004002)
错误消息 4
无法将对象强制转换 COM 类型为接口类型的 System.__ComObject 的 ADODB。
连接。此操作失败,因为 COM 组件的接口 IID
{00001550-0000-0010-8000-00AA006D2EA4} 上的 QueryInterface 调用失败,出现
以下错误: 不支持此界面 (从 HRESULT 异常: 0x80004002 (E_NOINTERFACE))。"
版权声明:本文标题:关于在Win7 SP1操作系统下编译的ADO应用程序不能在比Win7 SP1版本低的 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/p/1715948504a690267.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论