类不支持自动化(错误 430)
不是所有对象都会公开一个自动化接口。 此错误具有以下原因和解决方案:
The class you specified in the GetObject or CreateObject function call was found, but has not exposed a programmability interface.
您不能写入代码以控制对象的行为,除非它已公开了"自动化"。 检查创建该对象的应用程序的文档,以获得此类对象的自动化使用的限制。
您将项目从 .dll 更改为了 .exe,或从 .exe 更改为了 .dll。 例如,如果您已经编译并注册了 .dll 服务器,然后您将该项目类型更改为了 .exe,并重新进行编译,那么已在系统上注册了 .dll 和 .exe 的事实将会阻止您创建任何对象。 您必须手动注销旧的 .dll 或 .exe 以避免该问题。 这是由项目的兼容性和将项目从 .exe 更改为 .dll 一起造成的。 在项目兼容性中,保留了 CLSID,没有保留 IID。 由于保留了 CLSID,该类最后登录了两个服务器 一个为处于处理状态的服务器,一个为本地服务器。 当创建了实例了,选择处于处理状态的服务器。 当查询接口时,.dll 不支持 IID,因为它是新的。
有关其他信息,选择有问题的项并按 F1(在 Windows 中)或 HELP(在 Macintosh 上)。
支持和反馈
有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。