最近在做一个项目,pc端需要与机外对刀仪进行通讯,该对刀仪设备有一个RS232的串口,需要通过这个串口采集对刀仪中的数据。
PC端打开MFC,新建对话框工程,在窗体上右键插入ACTIVEX,选择Microsoft Communications Cotrol。 此时我发现我的VS2017中没有这个控件类。
原因是:
C:\WINDOWS\system32 下缺少文件件MSCOMM32.DEP和MSCOMM32.OCX;
1、我从官方下载了这两个文件
下载地址 https://download.csdn.net/download/AAXUGUI/87972391
放到了system 32 这个文件夹,然后使用CMD窗口对这个类进行注册,使用如图注册命令:
执行注册时窗口弹出报警说MSCOMM32.OCX 与当前系统版本不兼容。
2、找了半天原因才发现:原来在32位系统下才将这两个文件放到 system32 文件夹中,而我的win10是64位系统,应该放在 C:\Windows\SysWOW64 文件夹中。放好后我继续运行CMD进行注册,注册后又报警:
,
3、查了半天,原来是因为权限问题。最后我在开始菜单中找到CMD的启动程序,然后使用管理员的权限运行如下命令(注意文件放置路径为64位的):
添加成功, 可以使用微软的通讯控件类了。