未能导入ActiveX控件。请确保它已正确注册。

headbegger 2018-11-18 12:02:57
我刚开始接触Visual Studio 2017,以前是使用VB6,现在想学习VB.NET,新建一个文件后,在工具箱中添加COM控件Actbar3.ocx,但是在向窗口拖拽时,弹出错误对话框“未能导入ActiveX控件。请确保它已正确注册。”这个控件在VB6中使用正常,为什么在VB.NET中会提示没有注册呢?有什么办法解决?

我的系统是WIN7旗舰版,64位。在网上搜索到的办法都不能解决,请高手帮我看下,谢谢!





...全文
757 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
思考 2018-11-22
  • 打赏
  • 举报
回复
我也是从vb6转到.net的,你可以用这个控件做一个简单的vb6工程,发给我给你在.net试试,bd121@163.com
  • 打赏
  • 举报
回复
引用 4 楼 headbegger 的回复:
可以肯定控件在VB6开发模式下是正常使用的。因为Actbar3.ocx做菜单工具栏真的太方便了,尤其是多文档窗口中自动生成文档标签,所以想在程序中使用。
关键是问,是不是当前你用来开发 .net 程序的这台机机器(这个 windows 账号的window桌面登录之后)下也用 vb6 开发模式测试过这个 COM 控件确实可用?通常能跑 v2017 的机器大概已经就不能直接很好地跑 vb6 开发环境了。所以有可能你说这个的时候,其实并没有在本机上用 vb6 测试过。 我并不是说这个控件在 vb6 开发模式下不能正常使用,而是说你当前的这台机器(这个windows账号的桌面环境)下不能正常使用。COM就是这个“德性”,经常是用了2、3个月之后就不能用了,必须重新安装整个操作系统才能重新安装并正常使用COM组件。
  • 打赏
  • 举报
回复
干净地卸载,然后从注册表删除相关组件的内容,然后重新拿你的组件安装包安装一遍。
良朋 2018-11-19
  • 打赏
  • 举报
回复
应该是你这个控件的版本过低,framwork不支持了,如果一定要用,你需要下载更高版本的Actbar3.ocx。 至于你说的Actbar3.ocx做菜单工具栏真的太方便了可能是习惯问题吧,vs自动菜单控件也不难用。
headbegger 2018-11-18
  • 打赏
  • 举报
回复
Actbar3.ocx控件本想在提问帖子中上传,但发贴没有找到上传文件的地方,不知道如何上传
headbegger 2018-11-18
  • 打赏
  • 举报
回复
工程目标CPU设置为 x86 仍然不行,
  • 打赏
  • 举报
回复
那你试试把你使用 COM 组件的工程设置为 x86 平台版本。 不过还是建议你不要用 COM 组件。
headbegger 2018-11-18
  • 打赏
  • 举报
回复
可以肯定控件在VB6开发模式下是正常使用的。因为Actbar3.ocx做菜单工具栏真的太方便了,尤其是多文档窗口中自动生成文档标签,所以想在程序中使用。
  • 打赏
  • 举报
回复
如果只是注册表有注册,而运行不正常,那么你应该先尝试彻底卸载,然后找出安装程序重新安装一遍。再来引用。 不过,COM 有一个著名的注册“DLL地狱”问题。实际上整个 .net 就是为了淘汰 COM 组件的这个问题而出现的。所以如果同样功能能不用 COM 组件就不要用 COM 组件。我倒是觉得这类 COM 技术更好的应用是在 vb6 等老程序中动态调用 .net 托管组件才用。而你在 .net 程序开发中,应该找 .net 组件(无需注册)来用。
  • 打赏
  • 举报
回复
首先你要确认你在当前机器的 vb6 开发模式确实可以正常使用这个 ActiveX 控件。 COM 组件相对来说是比较稳定的(只不过它有比较垃圾的 windows 注册表机制,而注册表经常被扰乱),所以只要是 vb6 能用,那么基本上在 .net 中就一定能正常地通过 COM 机制使用。如果你的组件是 x86 模式的,那么你需要把你的 .net 应用的发布版本设置为 x86 模式的。

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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