急问题!!运行时出现430错误,用VB自带的和InstallShield都有这个问题!

tang_ghost 2003-10-21 11:24:34
在msdn上查430错误为
并非所有的对象都能显露自动化接口。此错误有以下原因和解决方法:

虽然在指定的 GetObject 或 CreateObject 函数调用中找到此类,但并没有显露编程的接口。
除非一个对象有支持自动化的接口,否则不能写代码来控制该对象的行为。检查创建此对象的应用程序的文档,以了解在此对象类上使用自动化的限制。

您将一个工程从 .dll 更改为 .exe,或从 .exe 更改为 .dll。如果您有一个已经编译并注册了的 .dll 服务器,然后您将工程类型更改为 .exe 并重新进行了编译,因为 .dll 和 .exe 已经在您的系统中注册了,因此您无法创建任何一个对象。您必须手工取消对旧的 .dll 或 .exe 的注册来避免这一问题。
发生这一问题的原因是工程兼容性和将工程从 .exe 更改为 .dll 综合造成的。在工程兼容性中,CLSID 被保留,而不是 IID 被保留。因为 CLSID 被保留,所以最后被注册的类带有两个服务器,一个是进程内服务器,另一个是本地服务器。当创建一个实例时,将选择进程内服务器。当发生界面查询时,.dll 不支持 IID,因为它是新的。

详细信息,可选取有问题的项目,并按下 F1 键。
如何解决?什么地方出错的?
...全文
254 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
tang_ghost 2003-10-21
  • 打赏
  • 举报
回复
各位帮想想都什么原因能引起这个错误?
分不够我可以在加
fafan 2003-10-21
  • 打赏
  • 举报
回复
装一下ADO的最新版2.8,我以前也遇到过430的错误,安装ADO最新版后一切正常。
tanta 2003-10-21
  • 打赏
  • 举报
回复
从你的描述来看,应该是你调用的接口有问题。msdn已经说的很详细了,你检查一下你调用自动化接口的地方。
since1990 2003-10-21
  • 打赏
  • 举报
回复
up
tang_ghost 2003-10-21
  • 打赏
  • 举报
回复
大家帮忙!!!!
tang_ghost 2003-10-21
  • 打赏
  • 举报
回复
没有人帮我吗?

7,762

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧