VC通信控件MSComm的有关问题

VC通信控件MSComm的问题
在某书的光盘上找了一个基于对话框利用MSComm控件进行通信接收数据的程序,直接编译运行没问题,但在程序中任意改动后(包括任意位置加一个空格再删去),重新编译运行后出错!

Debug Assertion Failed!
Program:...
File:occsite.cpp
Line:161

单步调试运行在OnInitDialog函数中
运行到
m_Com.Create(NULL,WS_VISIBLE|WS_CHILD,CRect(0,0,0,0),this,ID_COMMCTRL);//发现程序就是在这报的异m_Com是CMSComm类型的全局对象,这是创建通信控件的语句

当注释掉上句时在运行到
m_Com.SetCommPort(1);//选择com口
仍然报错

主要是原来的程序没问题,但随便改动一点就出错,十分诡异!请大家帮忙分析一下这可能由什么原因造成的啊?!非常感谢

------解决方案--------------------
控件注册了么
------解决方案--------------------
使用regsvr32.exe注册下控件。

MSComm都需要注册才能使用的