VB6 运行时错误‘374’ 激活控件‘VB.UserControl’失败

VB6项目,更新了一些内容,生成了新版的exe文件,放到设备上运行,提示

运行时错误 374:激活控件‘VB.UserControl’失败。这个控件可能与您的应用程序不兼容。确定您使用的这个版本的控件是由您的应用程序所提供的。

进行了多种尝试,仍未解决问题,不过发现了规律:

设备上的控制电脑装的是系统是XP,较早版本的exe可以在设备上运行,而我接手之后重新生成的exe无法运行。

该项目是从前同事H手中接过来的,当时他的电脑系统是XP,而当前开发电脑是Win7,于是进行了比对,得出结论:

在XP中生成的exe没问题;

在Win7中生成的exe报错;

原因找到了,不过还是没有解决办法。

根据错误提示的具体内容:UserControl, 结合之前网上查资料的结果,判断很可能是用户自定义控件的ocx文件版本问题,也就是说:

目标电脑上已经安装的软件目录中,放着早期在XP系统开发时生成的ocx文件,与之匹配的是XP系统中生成的exe文件,后来我接手项目之后,在Win7系统中开发,生成了新的exe文件,这个exe文件放进目标电脑之后,与原有的ocx不匹配了。

思路出来了,就是要在Win7系统中把ocx文件重新生成一遍,和新的exe文件匹配起来。

找到用户自定义控件的项目(这个自定义控件叫AButton,是一个自定义样式的按钮):

1. 打开.vbp文件

2. 选中项目名称

3. 文件-> 生成Abutton.ocx

生成新的ocx文件之后,再回到主项目中,把exe也重新生成一遍,再把ocx和exe一起更新到目标电脑上,问题解决。

总结一下,本例的问题是由开发环境的操作系统改变而引起,在新的操作系统中重新生成ocx文件即可。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小鹰信息技术服务部

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值