您的位置:首页 > 其它

打开资源文件时显示说没有安装这个ActiveX控件 "{648A5600-2C6E-101B-82B6-000000000014

2012-08-08 13:28 357 查看
mscomm32.ocx免费下载地址: http://www.rayfile.com/zh-cn/files/aa702b11-e11a-11e1-9c94-0015c55db73d/

一、现象描述:

打开资源文件时显示说:

未在此计算机上注册ActiveX控件"{648A5600-2C6E-101B-82B6-000000000014}"。请注册该控件并重试 该怎么办呢?

二、原因分析

在我们的代码中有如下:



且m_ctrlComm的类型为:

CMSComm	m_ctrlComm;


而类CMSComm的定义如下:



上面画红线底的部分就是我们报错时提示的CLSID,我在猜想在进入资源浏览时会调用到CreateControl,而且CreateControl会调用 GetClsid()来加载此CLSID对应的.ocx文件。



三、解决方法

1、本地找到mscomm32.ocx或网上下载;

2、注册mscomm32.ocx文件

法一、手动操作;

首先,手动把mscomm32.ocx文件拷到C:\WINDOWS\system32 下;

然后:开始->运行,输入 regsvr32 msflxgrd.ocx;

最后,编辑以下内容到新建的.reg文档中:

REGEDIT 

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

HKEY_CLASSES_ROOT/Licenses/4250E830-6AC2-11cf-8ADB-00AA00C00905=kjljvjjjoquqmjjjvpqqkqmqykypoqjquoun

运行这个.reg文件,完成注册。

法二、批处理操作(推荐用法);

写一个批处理文件完成法一中完成的四个步骤,如下:

copy mscomm*.* %windir%\system32\ /y
Regsvr32 %windir%\system32\mscomm32.ocx /s
reg add "HKCR\Licenses\4250E830-6AC2-11cf-8ADB-00AA00C00905" /v "" /d "kjljvjjjoquqmjjjvpqqkqmqykypoqjquoun" /f
pause


把mscomm32.ocx与批处理文件放在同级目录,运行即OK。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐