我在当前的Workspace中插入MSComm控件:
Project菜单------>Add to Project---->Components and Controls----->Registered ActiveX Controls--->选择Components: Microsoft Communications Control version 6.0 插入到当前的Workspace中
在Mainfrm.cpp::OnCreare()中
用这条语句:
if (!m_ComPort.Create(NULL,style,CRect(0,0,0,0),this,ID_COMMCTRL))
但一编译就说:
F:\Ao\Job\ao\MainFrm.cpp(52) : error C2065: 'ID_COMMCTRL' : undeclared identifier
我在MSComm.h和MSComm.cpp找ID,但是都没有ID,哪位大侠能告诉我怎么办?
我用VC++6.0

解决方案 »

  1.   

    不好意思,打错了,应该是:在Mainfrm.cpp::OnCreate()中
      

  2.   

    我软件的界面所属的类是DlgMachine(自己建的),是单界面的,请问我这个控件是不是应该建在DlgMachine里面编写通信代码呢?上面的代码是参考别人的,我觉得不应该在MainFrame这个类里写通信代码,不知道我的感觉是对还是错呢?哪位大侠能告诉我啊?
      

  3.   

    ID不存在可以新建一个,好像是View->Symbols->New。
    代码该放到哪儿要看实际需要了,总之觉得哪儿合适就先放哪儿,写起来不合适再做调整。
      

  4.   

    插入MSCOMM控件生成一新类:CMSComm,
    在CMAINFRAME类中#INCLUDE“MSComm.h”
    声名一变量 CMSComm m_MSComm,
    在Mainfrm.cpp::OnCreare()中,m_MSComm.Create()
      

  5.   

    用View->Symbols->New可以建ID,但是,那个值是多少啊?是跟着上面的按钮那些排下去吗?
      

  6.   

    是这样的,这个新控件的ID是需要你提供给Create函数的。
    你说上面的代码是参考别人的,那人家的代码里肯定有ID_COMMCTRL的定义的,你去找找看就知道了。
    在MSComm.h和MSComm.cpp里肯定是找不到的,因为不关它们的事。
      

  7.   

    找过了,人家没有提供ID_COMMCTRL的定义啊