VS2010 VC/MFC :“HWND”类型的实参与“SOCKET”类型的形参不兼容

xiaojie10090 2012-05-29 09:09:35
//获取对话框指针
HWND hMainDlg=::FindWindow(NULL,_T("LDSAMS1.0")); //获取句柄
CMainDLG pWnd= (CMainDLG*)FromHandle(hMainDlg); //由句柄得到对话框的对象指针

上面红色的hMainDlg处提示该错误,怎么解决?
...全文
497 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
向立天 2013-03-05
  • 打赏
  • 举报
回复
您好 我是本版版主 此帖已多日无人关注 请您及时结帖 如您认为问题没有解决可按无满意结帖处理 另外本版设置了疑难问题汇总帖 并已在版面置顶 相关规定其帖子中有说明 您可以根据规定提交您帖子的链接 如您目前不想结帖只需回帖说明 我们会删除此结帖通知 见此回复三日内无回应 我们将强制结帖 相关规定详见界面界面版关于版主结帖工作的具体办法
东莞某某某 2012-05-29
  • 打赏
  • 举报
回复
socket放app里
xiaojie10090 2012-05-29
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

CMainDLG pWnd= (CMainDLG*)FromHandle(hMainDlg);

应该是

CMainDLG * pWnd= (CMainDLG*)FromHandle(hMainDlg);
[/Quote]

嗯,这个地方一开始的确疏忽了,呵呵
xiaojie10090 2012-05-29
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

怎么有SOCKET类型?你的定义有问题吧.
[/Quote]

我知道了,我是在ConnectSocket.cpp(CAsyncSocket的派生类CConnectSocket)中写的那段代码,所以调用了CAsyncSocket类中的FromHandle();,所以才出现了这种情况,我现在是想多个对话框共用一个socket,在ConnectSocket.cpp里边把登录对话框关闭了,同时打开主对话框,所以想通过获取对话框指针的方式传递socket,但是现在还不会啊,实在没办法的话我只能把socket弄成全局变量了。。。。。。
oyljerry 2012-05-29
  • 打赏
  • 举报
回复
怎么有SOCKET类型?你的定义有问题吧.
三条猫 2012-05-29
  • 打赏
  • 举报
回复
CMainDLG pWnd= (CMainDLG*)FromHandle(hMainDlg);

应该是

CMainDLG * pWnd= (CMainDLG*)FromHandle(hMainDlg);

15,978

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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