现在的位置: 首页 > 综合 > 正文

VS2008 使用MSCom的问题

2012年10月23日 ⁄ 综合 ⁄ 共 858字 ⁄ 字号 评论关闭

一个老的VB 程序,用到了COM 用于输出通讯。

现在改成VS2008的,因为本机装过VB6.0. 在工具中成功引入了Microsoft Communication Control,一切都很顺利。 在本机和同事的机器上都正常运行。

可是布署到一台测试Server上时,却一点exe文件就出错。

用记Log的方式详细Dedug后,在Form 构造函数的Init方法中.COM那快出错了。

在网上搜了一些资料。问题找到了,原来我和同事都正常运行的机器上

C:\winnt\system32 下有
Mscomm.srg, Mscomm32.ocx,Mscomm32.dep

这三个文件。且已经注册过了,因为是装过vb6.0.

而测试机上没有安装过vb6.0.

 做法如下:

做法:

 第一步:将Mscomm.srg, Mscomm32.ocx,Mscomm32.dep三个文件复制到系统文件夹中。要注意的是,

MSComm控件是要授权的,所以必须将其使用“执照”Licence 在注册表中登记注册,下一步就是注册方法。至

于为什么要这样做,可以看看下面的网页:http://support.microsoft.com/support/kb/articles/q151/7/71.asp
  
 第二步:用Windows下的注册工具regsvr32注册该OCX控件,点击“开始”->"运行",再在中填入(假设操

作安装在C盘,WIN2000):

Regsvr32 C:\winnt\system32\Mscomm32.ocx
 
 第三步:在注册表中手工新建一个主键项:先在点击“开始”->"运行",再在中填入regedit命令打开注册表,

找到HKEY_CLASSES_ROOT\Licenses,在其中添加主键

4250E830-6AC2-11cf-8ADB-00AA00C00905 并将内容设置为:

       kjljvjjjoquqmjjjvpqqkqmqykypoqjquoun

   (注:这项内容也可以用记事本程序打开Mscomm.srg文件看到)

 三步做完,成功打开运行!

抱歉!评论已关闭.