编写串口通信程序时,显示error C2065: “WM_COMM_RXCHAR”: 未声明的标识符

jorzephyr 2009-03-05 11:59:57
在SerialPortTestDlg.h中,对WM_COMM_RXCHAR响应函数进行声明:
// Generated message map functions
//{{AFX_MSG(CDebugDlg)
afx_msg LONG OnComm(WPARAM ch,LPARAM port);
//}}AFX_MSG

在CSerialPortTestDlg.cpp中,对WM_COMM_RXCHAR进行消息映射:
BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
//{{AFX_MSG_MAP(CAboutDlg)
ON_MESSAGE(WM_COMM_RXCHAR,OnComm)
// No message handlers
//}}AFX_MSG_MAP
END_MESSAGE_MAP()

并在CSerialPortTestDlg.cpp中,加入函数
LONG CDebugDlg::OnCommunication(WPARAM ch,LPARAM port)
{
m_strEditReceiveMsg+=ch;
UpdateData(FALSE);
return 0;
}

我是根据上面文章做的,好像别人都编译通过了,但是我就出现如题的问题了。。。
按理说CSerialPort应该提供WM_COMM_RXCHAR的定义呀,为什么我这个没有??
是不是我少装了什么?
我用的是vs2005的c++
...全文
552 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
romance99999 2012-05-15
  • 打赏
  • 举报
回复
#define WM_COMM_RXCHAR WM_USER+7 // A character was received and placed in the input buffer.
jorzephyr 2009-03-06
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 levelmouse 的回复:]
查找 WM_COMM_RXCHAR 是在哪个头文件中定义的,包含进来。
没有的话要自己定义
如:#define WM_COMM_RXCHAR (WM_USER + 100)
[/Quote]


这样是可以编译通过,但是我觉得这样并不行吧。。。
我觉得应该是当从串口收到数据时,发送WM_COMM_RXCHAR,这个应该是已经定义好的吧
这样自己定义真的能实现串口通信么。。。。
jorzephyr 2009-03-06
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 cynthiaj 的回复:]
在.h中是OnComm(WPARAM ch,LPARAM port);
而.cpp中是OnCommunication(WPARAM ch,LPARAM port)
名字不一样!
[/Quote]
这个我注意到了,不是这个原因的
jorzephyr 2009-03-05
  • 打赏
  • 举报
回复
MSDN里没有WM_COMM_RXCHAR的信息
zaodt 2009-03-05
  • 打赏
  • 举报
回复
应该是没有包含相应的头文件;

查找 WM_COMM_RXCHAR 是在哪个头文件中定义的。
levelmouse 2009-03-05
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 cynthiaj 的回复:]
在.h中是OnComm(WPARAM ch,LPARAM port);
而.cpp中是OnCommunication(WPARAM ch,LPARAM port)
名字不一样!
[/Quote]
函数名。。。
levelmouse 2009-03-05
  • 打赏
  • 举报
回复
查找 WM_COMM_RXCHAR 是在哪个头文件中定义的,包含进来。
没有的话要自己定义
如:#define WM_COMM_RXCHAR (WM_USER + 100)
菜牛 2009-03-05
  • 打赏
  • 举报
回复
是否没包含头文件?函数声明不一致也是错误。
eagerle01 2009-03-05
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 jorzephyr 的回复:]
MSDN里没有WM_COMM_RXCHAR的信息
[/Quote]
右键-》go to defination!
cynthiaj 2009-03-05
  • 打赏
  • 举报
回复
在.h中是OnComm(WPARAM ch,LPARAM port);
而.cpp中是OnCommunication(WPARAM ch,LPARAM port)
名字不一样!

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧