编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛  
 
全能 ASP / PHP / ASP.NET 主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付学习型 ASP/PHP/ASP.NET 主机 30元/年
发新话题
打印

[求助]程序提示“Activex”部件不能创建对象

[求助]程序提示“Activex”部件不能创建对象

用setupfactroy打包
程序打包后安装到没有VB的机器上运行时提示“运行错误,'429',ActiveX部件不能创建对象”
我是在程序里调用了两个matlab的com组件mydll1.dll和mydll2.dll
打包时已经在setup factory里勾选了“注册com组件”、“注册类型库”
我想可能还是没有注册成功,请问如何才能解决这个问题
如果要注册的话,应该这么做

TOP

ActiveX 部件不能创建对象或返回对该对象的引用(错误 429)

创建对象要求该对象的类已在系统注册表中注册,而且任何相关的动态链接库 (DLL)必须能使用。此错误有以下的原因和解决方法:

类没有注册。例如,系统注册表中没有类的说明,或虽有类说明,但找不到文件,或指定的文件类型错误。
如果可能的话,试着启动对象的应用程序。如果注册信息过期或错误,应用程序应该检查注册表并更正信息。如果启动应用程序没有解决问题,请重新执行应用程序的安装程序。

对象需要的 DLL 不能使用,可能因为找不到,或是已损坏。
确保所有相关的 DLL 都可使用。例如,Data Access Object (DAO) 需要支持多平台的 DLL。如果这是造成错误的原因,则要为此对象重新执行安装程序。

对象在机器上使用,但它是授权的 Automation 对象,而且在具体的例子授权中不能确认可用。
一些对象在部件找到授权键后,才能被具体的例子说明,并且在当前的机器上的实例说明中,确认对象已被注册。当通过正确安装的类型库或对象库对一个对象进行引用时,就能自动提供正确的键。

如果 CreateObject 或 GetObject 的调用结果,是用例子说明,那么,对象必须找到键。在这种情况,它会搜寻系统注册表或查找它在安装时建立的指定文件,例如,扩展名为 .lic 的文件。如果此键找不到,则对象不能被说明。如果用户建立对象应用程序,删除必须文件,或改变系统注册表,则对象不能找到此键。如果此键找不到,对象也不能用例子说明。实例说明可在开发系统中工作,但不能在用户系统中。它对用户重装登记的对象是必须的。

使用 GetObject 函数获得用 Visual Basic 所创建类的引用。
GetObject 不能获得用 Visual Basic 所创建类的引用。

对该对象的访问显式地被拒绝。
例如,试图访问当前正在使用的数据对象,且此对象已被锁定以防止死锁情形发生。如果是这样的情形,可以在其他时间去访问对象。

详细信息,可选取有问题的项目,并按下 F1 (在Windows中)或HELP(在Macintosh中)键。

原來朋友仔感情再天真, 亦是我永遠也會愛惜的人, 明日愛他人, 也記住學會不要緊; 原來朋友比戀人更高分, 亦讓我開始懂得不記恨, 若大家都敏感, 我更要永遠記得拒絕再因小事怪人, 爲何沒有這條校訓...Twins-朋友仔 MCSD Training

TOP

还是没有解决
尝试用命令运行regsvr32 mydll1.dll,提示“Load library失败,找不到指定的模块”

TOP

我现在和你一样也遇到了同样的问题,也以为是没有注册。当然也注册不了。但是回到VB环境再引用一次。也不用保存,原来编好的EXE就可以调用DLL了。VB像SB一样。叫SB得了

TOP

    没办法    不要窝火了   想想他也帮你赚了银子啊

[ 本帖最后由 simpson 于 2008-7-17 22:35 编辑 ]

TOP

发新话题