关于 MFC的自定义消息映射函数的问题:error C2065: “OnSocket”: 未声明的标识符

时间:2022-12-15 16:34:05
最近在学MFC网络编程,自定义了一个消息处理函数:afx_msg long OnSocket(WPARAM wParam, LPARAM lParam);
然后再.cpp中加入 如下
BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
//{{AFX_MSG_MAP(CAboutDlg)
// No message handlers
//ON_MESSAGE(WM_SOCKET)
ON_MESSAGE(WM_SOCKET,OnSocket)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
结果它就报错:error C2065: “OnSocket”: 未声明的标识符
如何解决?

9 个解决方案

#1


BEGIN_MESSAGE_MAP( CAboutDlg, CDialog)
//{{AFX_MSG_MAP( CAboutDlg)
// No message handlers
//ON_MESSAGE(WM_SOCKET)
ON_MESSAGE(WM_SOCKET,OnSocket)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()

你加到了CAboutDlg的消息映射里去了

#2


大神,MFC太坑了,一个Cpp里居然有两个映射快,这个问题浪费了一下午的时间,太感谢了。

#3


顺便问下,如何判断对方开启的事UDP还是TCP链接?

#4


两个映射没有问题,关键是看你理解没理解消息映射的原理,会不会用罢了

顺便问下,如何判断对方开启的事UDP还是TCP链接?
---------------------------------------------------------------------------
你可以用connect函数连接一下服务器,如果其他方面都正确的话
1、TCP服务器connect函数会返回0,正确
2、UDP服务器connect函数会返回SOCKET_ERROR

#5


恩,英雄所见略同 关于 MFC的自定义消息映射函数的问题:error C2065: “OnSocket”: 未声明的标识符!先试探,TCP不行就改用UDP!

#6


感谢邀请。

你在头文件里面写函数声明了吗?

#8


关于 MFC的自定义消息映射函数的问题:error C2065: “OnSocket”: 未声明的标识符  这个帖子真好

#9


我去,我也中这个招了

#1


BEGIN_MESSAGE_MAP( CAboutDlg, CDialog)
//{{AFX_MSG_MAP( CAboutDlg)
// No message handlers
//ON_MESSAGE(WM_SOCKET)
ON_MESSAGE(WM_SOCKET,OnSocket)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()

你加到了CAboutDlg的消息映射里去了

#2


大神,MFC太坑了,一个Cpp里居然有两个映射快,这个问题浪费了一下午的时间,太感谢了。

#3


顺便问下,如何判断对方开启的事UDP还是TCP链接?

#4


两个映射没有问题,关键是看你理解没理解消息映射的原理,会不会用罢了

顺便问下,如何判断对方开启的事UDP还是TCP链接?
---------------------------------------------------------------------------
你可以用connect函数连接一下服务器,如果其他方面都正确的话
1、TCP服务器connect函数会返回0,正确
2、UDP服务器connect函数会返回SOCKET_ERROR

#5


恩,英雄所见略同 关于 MFC的自定义消息映射函数的问题:error C2065: “OnSocket”: 未声明的标识符!先试探,TCP不行就改用UDP!

#6


感谢邀请。

你在头文件里面写函数声明了吗?

#7


#8


关于 MFC的自定义消息映射函数的问题:error C2065: “OnSocket”: 未声明的标识符  这个帖子真好

#9


我去,我也中这个招了