背景:以前在VC++6.0环境下有一个校表台程序,现在将这个程序移植到win10 64位系统vs2017开发环境下,在打开mfc主框架的时候提示未能实例化3个Activex控件。
解决办法:
1、先在虚拟机中win7系统下安装了vc++6.0,将这个程序在vc6.0工程中打开,并运行,没有问题,再打开主mfc框架发现里面用了3个串口控件,有3个电话一样的图标,初步确认了是因为没有注册串口控件的问题。
2、网上下载了MSCOMM32.ocx控件,64位的win10系统需要将MSCOMM32.ocx控件复制到C:\Windows\SysWOW64\目录下,否则后面注册会出错。如果是32位系统则放到C:\Windows\System32中。
3、在C:\Windows\SysWOW64里找到cmd.exe,右键以管理员身份运行,输入regsvr32 MSCOMM32.ocx,如下图:

提示注册成功。
4、若出现图中错误,则表示用户的权限不够,此时应按照上面的步骤打开dos界面

5、在vs2017中按照如下图示添加串口控件,在工具箱中就可以看到像电话一样的图标,这就是串口控件。



本文介绍如何解决在VS2017环境下移植自VC++6.0的程序中,因缺少注册的串口控件导致的问题。通过下载并正确安装MSCOMM32.ocx控件,以及在VS2017中正确添加该控件,实现了程序在新环境下的正常运行。
2715

被折叠的 条评论
为什么被折叠?



