关于VB6.0中控件加载的难题

简介: 我想大家都多多少少都为VB6.0中ActiveX控件的加载而感到头痛,比如有时候在打开一个工程的瞬间它给你弹出无法加载或加载错误的提示框,在你想用到某个控件时,VB6.0中又找不到……这样的情况真的很让人恼火!!!

我想大家都多多少少都为VB6.0中ActiveX控件的加载而感到头痛,比如有时候在打开一个工程的瞬间它给你弹出无法加载或加载错误的提示框,在你想用到某个控件时,VB6.0中又找不到……这样的情况真的很让人恼火!!!


      当然,我写这些东西,肯定也遇到过此类问题,本来在公司的XP系统下做好的工程,一放到我的Win7 64上就出现种种错误……今天实在忍无可忍,不能再续让那些错误们笑话我。咬着牙在网上找出了解决的办法。


      所以当它提示你需要某些控件的时候,比如Systray.ocx,去网上把它下载下来,然后进行注册。


      注册方法还是那个老方法:


             ① 把.ocx文件放到C:\Windows\System32\


             ② 运行regsvr32 C:\Windows\System32\SysTray.ocx


      一般情况XP系统或Win7 32位系统就可以注册成功,但有的人又问了,注册的时候有时会注册失败,比如会弹出 "模块***\***\***.ocx ”(" ***\***\  ”表示控件存放路径)加载失败等对话框,如右图:


      这时候你可以以管理员的身份再次注册一遍,开始→搜索(cmd),搜索到cmd这个程序时,右键点击以管理员身份运行,乖乖地输入上面的②步骤中的regsvr32 C:\Windows\System32\SysTray.ocx运行一下,是不是大功告成啦?


      这时候如果还显示加载失败,那你就应该注意是不是你系统的问题了,如果你的系统是Win7 64,位,那就不要慌,上面的情况纯属正常情况,不知道经常逛C盘的童鞋们有没有注意到,原来在win7 64位的系统Windows目录下上比32位多了一个syswow64目录,随便查了查,WoW64 (Windows-on-Windows 64-bit)是一个Windows操作系统的子系统, 能够运行32-bit 应用程序WoW64子系统是一个轻量级的compatibility layer, 在所有版本的windows上都拥有同样的接口. 它的主要目的是用来创建32-bit环境, 为了让32位的应用程序可以不经过任何修改就运行在64-bit的系统上, 它提供了必须的接口。.

技术上说, WOW64是由三个DLL实现的.:Wow64.dll 是Windows NT kernel的核心接口, 在32位和64位调用之间进行转换, 包括指针和调用栈的操控.;Wow64win.dll 为32位应用程序提供合适的入口指针.;Wow64cpu.dll 负责将处理器在32位和64位的模式之间转换。


      关于syswow64暂时叙述到这里,在上面大概了解了syswow64,知道该怎么办了吧?对,就是把你需要注册的SysTray.ocx控件放到这个文件夹里再进行注册,注册方法跟上面的方法一样,当然注册的路径要改为C:\Windows\syswow64\SysTray.ocx,点击回车的时候是不是像下面那样显示注册成功啦?高兴吧……


这里再说一下,如果遇到“访问系统注册表错误”的问题,多半是权限问题,比如加载一个工程时提示访问系统注册表错误,你可以先以管理员身份打开VB,然后再从VB中加载那个工程。


      在这里小反思一下,以后遇到问题千万不要“不把小问题当问题”了,坚持遵守“不将就”的原则。遇到问题不急不躁,网络上的高手多得是,只要耐心、认真地学习,虚心向他人请教,没有解决不了的问题。



/

相关文章
|
2月前
|
API C# Windows
【C#】在winform中如何实现嵌入第三方软件窗体
【C#】在winform中如何实现嵌入第三方软件窗体
116 0
|
4月前
|
安全 API C#
在winform中如何嵌入第三方软件窗体✨
在winform中如何嵌入第三方软件窗体✨
48 1
|
4月前
|
容器 C# 开发者
XAML语言大揭秘:WPF标记的魅力所在,让你轻松实现界面与逻辑分离,告别复杂代码!
【8月更文挑战第31天】XAML提供了一种直观且易于维护的界面设计方式,使得开发者可以专注于逻辑和业务代码的编写,而无需关心界面细节。通过数据绑定、布局管理和动画效果等特性,XAML可以实现丰富的界面交互和视觉效果。在实际开发过程中,开发者应根据具体需求选择合适的技术方案,以确保应用程序能够满足用户的需求。希望本文的内容能够帮助您在WPF应用程序开发中更好地利用XAML语言。
48 0
零基础VB教程063期:如何用代码直接创建控件?从此不必拖控件了
零基础VB教程063期:如何用代码直接创建控件?从此不必拖控件了
323 0
|
自然语言处理 编译器 C#
【WPF】实现动态切换语言(国际化)以及动态换肤功能
以下内容,手把手从搭建到最终实现,完成多语言切换以及换装功能。
459 0
【WPF】实现动态切换语言(国际化)以及动态换肤功能
WPF界面无法正常显示(资源引用,如转换器),但程序正常运行
WPF界面无法正常显示(资源引用,如转换器),但程序正常运行
WPF界面无法正常显示(资源引用,如转换器),但程序正常运行
|
人工智能
VB编程:自定义过程改变窗体颜色-53
VB编程:自定义过程改变窗体颜色-53
187 0
|
人工智能
VB编程:自定义过程改变窗体颜色
VB编程:自定义过程改变窗体颜色
327 0
VB编程:自定义过程改变窗体颜色
VB源码升级后的几幅截图-VBIDE嵌入窗体、代码资源自动加入
用了整整两天的时间终于完成了功能上的升级,但多国语言版和数据库的加密还不知什么时间能做完,所以一时还不能发布,不过作为“内部人员”倒是可以先用为快:)
559 0
|
JavaScript 前端开发 C++
COM组件开发实践(七)---多线程ActiveX控件和自动调整ActiveX控件大小(上)
声明:本文代码基于CodeProject的文章《A Complete ActiveX Web Control Tutorial》修改而来,因此同样遵循Code Project Open License (CPOL)。
870 0