关于控件注册和使用许可问题的解决办法

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

关于控件注册和使用许可问题的解决办法

作者:catclaw2000

  鉴于前一段时间受困于微软控件的授权问题,而且互联网上也很难找到问题的解决方案,这两天论坛中也不停有网友在问相类似的问题,特撰写此文,以飨VCKBASE各位网友。
  大家都知道,对于普通的OCX控件,我们在发布时,使用安装软件拷贝到目标机器上然后再注册一下(或者手工拷贝然后用Regsvr32注册)就可以了 。
  但是对于微软提供的一些控件,比如 Microsoft ADO Control,Microsoft Datagrid Control等等,常常发现,在开发的机器上使用的好好的 ,但使用正常的发布流程,发布到目标机器上,就会出现“没有注册类别”的提示 ,软件无法使用等等问题。
  究其原因,在于微软为了防止其软件被非法发布,所以增加了许可机制(license);按理说,只有开发环境才需要许可,而在目标码的环境中,应用程序可以正常使用的,只不过不能被其他的开发工具打开;为什么会与微软原先的想法违背,我就不得而知了。让咱们进入正题,说说如何解决这个问题。
  首先,必须弄清楚许可信息的存储位置,告诉你,就在HKEY_CLASSES_ROOT/Licenses目录下。   接下来,需要知道哪个控件使用的是什么注册信息,在vs.net安装盘的一个目录Extras/VB6 Controls下,有一个注册文件vb6controls.reg,记录了VB6的大多数控件 的许可信息,下面是此文件的内容:

REGEDIT
HKEY_CLASSES_ROOT/Licenses = Licensing: Copying the keys may be a violation of established copyrights.

// Masked Edit Control 6.0 license key
HKEY_CLASSES_ROOT/Licenses/BC96F860-9928-11cf-8AFA-00AA00C00905 = mmimfflflmqmlfffrlnmofhfkgrlmmfmqkqj

// Chart Control 6.0 (OLEDB) license key
HKEY_CLASSES_ROOT/Licenses/12B142A4-BD51-11d1-8C08-0000F8754DA1 = aadhgafabafajhchnbchehfambfbbachmfmb

// Common Dialog Control 6.0 license key
HKEY_CLASSES_ROOT/Licenses/4D553650-6ABE-11cf-8ADB-00AA00C00905 = gfjmrfkfifkmkfffrlmmgmhmnlulkmfmqkqj

// ADO Data Control 6.0 (OLEDB) license key
HKEY_CLASSES_ROOT/Licenses/C4145310-469C-11d1-B182-00A0C922E820 = konhqhioohihphkouimonhqhvnwiqhhhnjti

// Common Controls-3 6.0 license key
HKEY_CLASSES_ROOT/Licenses/38911DA0-E448-11D0-84A3-00DD01104159 = mcpckchcdchjcjcclidcgcgchdqdcjhcojpd

// Windows Common Controls-2 5.0 (SP2) license key
HKEY_CLASSES_ROOT/Licenses/9E799BF1-8817-11cf-958F-0020AFC28C3B = uqpqnqkjujkjjjjqwktjrjkjtkupsjnjtoun

// Windows Common Controls license key
HKEY_CLASSES_ROOT/Licenses/57CBF9E0-6AA7-11cf-8ADB-00AA00C00905 = aahakhchghkhfhaamghhbhbhkbpgfhahlfle

// Data Bound Grid Control 5.0(SP3) license key
HKEY_CLASSES_ROOT/Licenses/556C75F1-EFBC-11CF-B9F3-00A0247033C4 = xybiedobrqsprbijaegcbislrsiucfjdhisl

// Data Bound List Controls 6.0 license key
HKEY_CLASSES_ROOT/Licenses/096EFC40-6ABF-11cf-850C-08002B30345D = knsgigmnmngnmnigthmgpninrmumhgkgrlrk

// Internet Transfer Control 6.0 license key
HKEY_CLASSES_ROOT/Licenses/78E1BDD1-9941-11cf-9756-00AA00C00908 = yjrjvqkjlqqjnqkjvprqsjnjvkuknjpjtoun

// Multimedia Control 6.0 license key
HKEY_CLASSES_ROOT/Licenses/B1EFCCF0-6AC1-11cf-8ADB-00AA00C00905 = qqkjvqpqmqjjpqjjvpqqkqmqvkypoqjquoun

// Chart Control 6.0 license key
HKEY_CLASSES_ROOT/Licenses/7C35CA30-D112-11cf-8E72-00A0C90F26F8 = whmhmhohmhiorhkouimhihihwiwinhlosmsl

// Windows Common Controls-2 6.0 license key
HKEY_CLASSES_ROOT/Licenses/4F86BADF-9F77-11d1-B1B7-0000F8753F5D = iplpwpnippopupiivjrioppisjsjlpiiokuj

// Windows Common Controls 6.0 license key
HKEY_CLASSES_ROOT/Licenses/ED4B87C4-9F76-11d1-8BF7-0000F8754DA1 = knlggnmntgggrninthpgmnngrhqhnnjnslsh

// Comm Control 6.0 license key
HKEY_CLASSES_ROOT/Licenses/4250E830-6AC2-11cf-8ADB-00AA00C00905 = kjljvjjjoquqmjjjvpqqkqmqykypoqjquoun

// DataGrid Control 6.0 (OLEDB) license key
HKEY_CLASSES_ROOT/Licenses/CDE57A55-8B86-11D0-b3C6-00A0C90AEA82 = ekpkhddkjkekpdjkqemkfkldoeoefkfdjfqe

// DataList Control 6.0 (OLEDB) license key
HKEY_CLASSES_ROOT/Licenses/A133F000-CCB0-11d0-A316-00AA00688B10 = cibbcimbpihbbbbbnhdbeidiocmcbbdbgdoc

// DBWin license key
HKEY_CLASSES_ROOT/Licenses/D015B071-D2ED-11d0-A31A-00AA00688B10 = gjdcfjpcmjicjcdcoihcechjlioiccechepd

// MSDBRPT license key
HKEY_CLASSES_ROOT/Licenses/9DF1A470-BA8E-11D0-849C-00A0C90DC8A9 = cchcqjejhcgcqcfjpdfcdjkckiqikchcojpd

// FlexGrid Control 6.0 license key
HKEY_CLASSES_ROOT/Licenses/1F3D5522-3F42-11d1-B2FA-00A0C908FB55 = gcfjdjecpchcncdjpdejijgcrdoijjfcieod

// MAPI Controls 6.0 license key
HKEY_CLASSES_ROOT/Licenses/899B3E80-6AC6-11cf-8ADB-00AA00C00905 = wjsjjjlqmjpjrjjjvpqqkqmqukypoqjquoun

// MSRDO 2.0 license key
HKEY_CLASSES_ROOT/Licenses/B1692F60-23B0-11D0-8E95-00A0C90F26F8 = mjjjccncgjijrcfjpdfjfcejpdkdkcgjojpd

// RemoteData Control 6.0 license key
HKEY_CLASSES_ROOT/Licenses/43478d75-78e0-11cf-8e78-00a0d100038e = imshohohphlmnhimuinmphmmuiminhlmsmsl

// Windowless Controls 6.0 license key
HKEY_CLASSES_ROOT/Licenses/80E80EF0-DBBE-11D0-BCE2-00A0C90DCA10 = qijimitpmpnpxplpvjnikpkpqoxjmpkpoivj

// PictureClip Control 6.0 license key
HKEY_CLASSES_ROOT/Licenses/6FB38640-6AC7-11cf-8ADB-00AA00C00905 = gdjkokgdldikhdddpjkkekgknesjikdkoioh

// Rich TextBox Control 6.0 license key
HKEY_CLASSES_ROOT/Licenses/DC4D7920-6AC8-11cf-8ADB-00AA00C00905 = iokouhloohrojhhhtnooiokomiwnmohosmsl

// Sheridan Tab Control license key
HKEY_CLASSES_ROOT/Licenses/190B7910-992A-11cf-8AFA-00AA00C00905 = gclclcejjcmjdcccoikjlcecoioijjcjnhng

// SysInfo Control 6.0 license key
HKEY_CLASSES_ROOT/Licenses/E32E2733-1BC5-11d0-B8C3-00A0C90DCA10 = kmhfimlflmmfpffmsgfmhmimngtghmoflhsg

// Winsock Control 6.0 license key
HKEY_CLASSES_ROOT/Licenses/2c49f800-c2dd-11cf-9ad6-0080c7e7b78d = mlrljgrlhltlngjlthrligklpkrhllglqlrk
  通常我们只要把这个文件导入到目标机器的注册表,即可解决困扰我们的控件授权问题了。不过在我的使用过程中发现有两个问题:

这里面的注释信息不准确,即可能标注是某个控件的许可,但用这个许可根本不行,不知道是微软故意的还是弄错了,比如 FlexGrid Control 6.0 的 许可应该是:HKEY_CLASSES_ROOT/Licenses/72E67120-5959-11cf-91F6-C2863C385E30=ibcbbbebqbdbciebmcobmbhifcmciibblgmf
许可信息不全,也就是说, 有一些控件的许可信息在这个文件里根本没有;
  那我们怎么办呢?苦恼ing...。一拍脑袋,有了,既然我们已经知道其在注册表中的位置、并且在开发的机器上使正常的,何不直接从开发机器上把整个licenses目录下的注册信息都导出来,然后再导入到目标机器上,既省事,还不怕有漏网之鱼 :)呵呵,大家都明白了吧?
  初次写文章,错误在所难免,欢迎各位指正。还有,本文仅供学习交流使用,希望不会侵犯微软的版权。
 

您没有使用该ActiveX控件许可 Technorati 标签: ActiveX控件,许可事情经过:ACCESS窗体工具箱里可用的树控件有3种。其中有1种是Microsoft TreeView Control, version 5.0 (SP2),把它往窗体上放,则显示下图所示的对话框。 不能用它揍不用吧,可是事有凑巧,我发现这个control正是我的老程序里用的,发现过程如下: 这篇文章提到他用的t 阅读详情

相关推荐

注册表机制解析WinCC ActiveX控件许可问题的深层原因

本文深入解析WinCC系统中ActiveX控件许可问题的根源,重点探讨Windows注册表与ActiveX授权机制的交互逻辑。通过分析设计模式验证流程、注册表键值结构及解密逻辑,揭示虚拟机环境下常见的许可证失效原因,并提供系统化解决方案与防御性编程实践,帮助开发者有效解决WinCC集成中的ActiveX控件授权问题

gaochao的博客 656

带有许可证的OCX控件

带有许可证的OCX控件,请大家帮忙,谢谢

VB数据库编程中的DBGRID32.OCX控件注册许可证管理

本文还有配套的精品资源,点击获取 简介:DBGrid控件是VB中用于展示操作数据库数据的关键组件,但有时会因许可证信息未找到而导致功能受限。DBGRID32.OCX是实现此功能的ActiveX控件,若未注册会导致错误提示。本工具包含批处理文件“一步注册安装.bat”注册表文件DBGRID.REG,用于自动手动注册DBGRID32.OCX,解决许可问题。确保控件在VB...

weixin_33660045的博客 1290

QRMaker.ocx文件以及注册说明,许可问题处理等

1. QRMaker.ocx资源,网上有很多, 这里也有本人上传的资源^_^https://download.csdn.net/download/wangjiaibin/10594808 注册时,切记将这几个文件(QRmaker.ocx、vssver.scc、QRmaker.lic、QRmaker.oca、QRmaker.tlb) 同时copy到c:\windows\system32\下(如果64...

wangjiaibin的博客 1万+

VB6.0中提示:该部件的许可证信息没有找到,在设计环境中,没有合适的许可使用该功能”的解决办法

OCX许可 用友U8产品使用了大量的OCX控件进行界面开发,其中有一大部门是使用VB6开发的。如果你想在项目中引用这些控件,往往你会发现一个提示,类似如下截图: OCX许可注册表位置 如果你去百度,得到的回答是控件没有开发许可证。在深入研究,就会知道,一般ocx控件都会需要个注册表文件,将许可证信息写入到如下位置,VB6编译的时候可以选择是否需要许可证,需要时就会生成vbl文件,帮助分发给最终使...

zzlufida的博客 1万+

【QT】Qt调用OCX控件详解

他可以在COM组件的数据类型QT对应的数据类型之间进行转换,有些COM的类型没有等价的Qt数据结构。如果想要嵌入到自己的窗口里,可以在自己的窗口里创建一个布局,然后将QAxWidget添加入布局。在使用时,需要知道控件的头文件,同时需要通过数据类型对照表将对应的类型转换到Qt的类型。通过示例可以看到,使用控件的CLSID示例化一个QAxObject对象就可以加载这个控件。ocx注册实际上是将控件注册到了注册表里,可以在注册表里查询到控件的信息。注册后,我们可以使用QT相关类通过控件的uuid来进行调用。.

Flywithdawn的博客 4241

ocx注册方法,vs安装包自动安装ocx,以及ocx注册失败的解决方法

一、ocx注册方法 方法一:使用bat命令注册ocx(使用管理员权限运行) 创建文本文件,写入下列命令后,修改文件后缀名为.bat,将该bat文件放置ocx所在文件夹下,然后使用管理员权限运行该bat文件即可(将下列命令中VideoWebCtl.ocx替换成你需要注册的ocx名称即可)。 cd /d %~dp0 regsvr32 VideoWebCtl.ocx 如果注册成功,会显示下图弹窗。 方法二:使用bat命令注册ocx(双击运行bat文件,无需使用管理员权限运行) 同方法一,只是..

Tanasha114的博客 1万+

ocx开发经验,ActiveX开发快速入门

1. ocx下载解压的目标位置,由注册表项指定 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\ActiveX Cache 默认为C:\WINDOWS\Downloaded Program Files inf文件也解压到该目录 下载的ocx在资源管理器中不可见,使用dir命令可见。可以使用copy

xiaoxiaoyu85的专栏 8557

springboot+pageoffice实现Word在线编辑

1、下载jar包 _卓正软件 - PageOffice官方网站 - 在线编辑Word、Excel的Office文档控件 2.将jar包打入maven仓库 mvn install:install-file -Dfile=D:\pageoffice4.5.0.3.jar -DgroupId=my.pageoffice -DartifactId=pageoffice -Dversion=1.0 -Dpackaging=jar 3、添加依赖 <dependency> <g.

qq_43737121的博客 2838

WinCC控件使用许可注册表文件:轻松实现控件许可注册

WinCC控件使用许可注册表文件:轻松实现控件许可注册 【下载地址】WinCC控件使用许可注册表文件 WinCC控件使用许可注册表文件 项目地址: https://gitcode.com/open-source-toolkit/4...

gitblog_09798的博客 674

【亲测免费】 WinCC控件使用许可注册表文件

WinCC控件使用许可注册表文件 【下载地址】WinCC控件使用许可注册表文件 WinCC控件使用许可注册表文件 项目地址: https://gitcode.com/open-source-toolkit/44d8b ...

gitblog_09811的博客 703

VB6控件许可问题解决方案:让开发更顺畅

VB6控件许可问题解决方案:让开发更顺畅 去发现同类优质开源项目:https://gitcode.com/ 项目介绍 在众多开发者中,使用Visual Basic 6(VB6)进行软件开发的朋友可能会遇到控件许可问题。这是一个常见的问题,会导致开发环境中的控件无法正常工作,影响整个开发流程。VB6控件许可问题解决方案(以下简称“解决方案”)正是为了解决这一问题而诞生,它通过一组注册表文件,帮...

gitblog_06707的博客 1016

【亲测免费】 WinCC控件使用许可注册表文件:简化许可注册流程,提升工作效率

WinCC控件使用许可注册表文件:简化许可注册流程,提升工作效率 【下载地址】WinCC控件使用许可注册表文件 WinCC控件使用许可注册表文件 项目地址: https://gitcode.com/open-source-tool...

gitblog_09782的博客 563

VB控件安装,及Comdlg32许可证的问题

VB控件的安装方法:在“开始”菜单中的“运行”中输入:regsvr32 C:/VB/ocx库/***.OCX关于Comdlg32许可证的问题安装了Comdlg32后,不能用,总是弹出提示说许可证无效,怎么办?解决办法如下:将下面的内容copy到notepad,存为.reg文件,文件名自己定了,再运行一遍,输入到注册表即可。 REGEDITHKEY_CLASS

Solaris_navi Tech Space 1551

【亲测免费】 解决VB6加载Winsock控件许可问题注册表文件

解决VB6加载Winsock控件许可问题注册表文件 【下载地址】解决VB6加载Winsock控件许可问题注册表文件 在使用VB6开发环境时,有时会遇到加载Winsock控件时提示“该部件的许可证信息没有找到。在设计环境中,没有合适的许可使用该功能”的问题。这个问题会导致无法正常添加Winsock控件到你的项目中...

gitblog_09794的博客 481

VB6.0控件许可证错误终极解决方案

Visual Basic 6.0(VB6.0)是微软推出的一款经典的Windows应用程序开发工具,以其可视化设计界面事件驱动编程模型,极大地提升了开发效率。其开发环境主要包括集成开发环境(IDE)窗体设计器对象浏览器调试器编译器等核心组件。在现代系统中,由于操作系统架构的演进(如Windows 10/11的64位机制),VB6.0面临运行兼容性挑战。例如,部分ActiveX控件在新版系统中无法正常加载,需通过虚拟机、兼容性模式或补丁方式进行适配。

weixin_42590539的博客 1457

WinCC 使用ActiveX控件,提示:“未找到许可证信息,没有设计模式的有效许可证”解决办法

在WinCC 画面绘制过程中,使用Microsoft Date and Time Picker Control 6.0(SP4)控件时提示,未找到许可证。4.弹出如下图所示对话框,完成注册表写入。再次打开WINCC,即可正常添加控件了。2.将文末代码复制到记事本中,并另存为VBCTRLS.reg文件,如下图所示。我自己使用的是WINCC 7.5 SP2,亲测有效,其他版本大家也可试试。3.双击VBCTRLS文件,弹出下图所示对话框,点击“是”。1.首先取消激活并关闭WINCC软件。

qq_44894693的博客 6399

WinSock专题-注册后无法使用

  WinSock 使用答疑写这篇文章的目的主要是帮助那些需要使用Winsock并分发各工作端使用的VFP程序员们。。。最初用这个控件的目的,只是想取得所连接数据库服务器的IP地址(::URL::http: //www.vfp.cn/bbs/dispbbs.asp?BoardID=2&ID=11170&replyID=&skin =0),判断是内网还是外网,进而在数据下载时进行“优化”,没

同一天空下 4018
上一篇: 需要重构的代码特征
下一篇: spring+hibernate中处理oracle BLOB
ZXBCARNATION
博客等级 码龄25年 3粉丝 17原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值