CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
英特尔®游戏设计大赛100美元现金周周送 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

我在MFC中添加了一个.cpp文件,里面有一个线程,可在对话框上的按钮的响应事件中AfxBeginThread报错

楼主awnuce1(猎狐19748778)2003-06-01 15:56:48 在 VC/MFC / 基础类 提问

我在  
  OnStart()里面  
  {  
      AfxBeginThread(ServerThreadProc,GetSafeHwnd(),THREAD_PRIORIT_NORMAL);  
   
  }  
  再server.cpp里我  
  #include   <stdafx.h>  
   
  #define   SERVERMAXBUF   5000  
  #define   MAXLINELENGTH   100  
  SOCKET   s=socket(AF_INET,SOCK_STREAM,0);  
  CString   m_Defualtfile="store.txt";  
   
  UINT   ServerThreadProc(LPVOID   pParam)  
  {  
  SOCKADDR_IN   sockSrc;  
  sockSrc.sin_family=AF_INET;  
  sockSrc.sin_port=htons(80);  
  sockSrc.sin_addr.S_un.S_addr=htonl(INADDR_ANY);  
  if(!bind(s,(SOCKADDR*)&sockSrc,sizeof(SOCKADDR)))  
        {  
  AfxMessageBox("没有绑定,按确定重新绑定");  
  bind(s,(SOCKADDR*)&sockSrc,sizeof(SOCKADDR));  
        }  
  else  
  {  
  listen(s,10);  
  int   len=sizeof(SOCKADDR_IN);  
  SOCKADDR_IN   addrClient;  
  SOCKET   sockClient=accept(s,(SOCKADDR*)&addrClient,&len);  
           
  AfxBeginThread(ServerThreadProc,pParam,THREAD_PRIORITY_NORMAL);  
  char   buf[SERVERMAXBUF];  
  memset(buf,0,SERVERMAXBUF);  
  recv(sockClient,buf,SERVERMAXBUF,0);  
   
  CStdioFile   file;  
  if(file.Open(m_Defualtfile,CFile::modeCreate|CFile::modeReadWrite|CFile::typeText)==0)  
  {  
  CString   filename;  
  filename=m_Defualtfile+"文件创建失败!";  
  AfxMessageBox(filename);  
  }  
  else  
  {  
  file.Write(buf,SERVERMAXBUF);  
  file.Close();  
  }  
  }  
  return   0;  
  }  
   
  可是它却告诉我    
  AfxBeginThread(ServerThreadProc,GetSafeHwnd(),THREAD_PRIORIT_NORMAL);  
  这里的ServerThreadProc   是没有定义的标识符,我要怎么才能关联再一起啊  
  问题点数:0、回复次数:5Top

1 楼ydzqw(BE BIG)回复于 2003-06-01 16:13:11 得分 0

没在dialog的Cpp里包含thread   cpp的头文件吧Top

2 楼awnuce1(猎狐19748778)回复于 2003-06-01 16:13:51 得分 0

就一个CPP,没有头文件Top

3 楼nuaawenlin(飘人)回复于 2003-06-01 16:33:37 得分 0

AfxBeginThread(ServerThreadProc,pParam,THREAD_PRIORITY_NORMAL);  
  不应该在线程中使用。  
  Top

4 楼etboy327(etboy)回复于 2003-06-01 16:42:03 得分 0

把这个线程放到你的那个有按钮响应函数的cpp文件前头试试。Top

5 楼ccwing(不是背书郎)回复于 2003-06-01 16:50:11 得分 0

在OnStart()那个文件里面的OnStart()之前加入:  
  UINT   ServerThreadProc(LPVOID   pParam);Top

相关问题

  • 创建的线程中创建对话框为什么就报错?
  • 多线程中的对话框问题
  • 线程和对话框问题
  • 线程和对话框的问题
  • 线程中创建动态对话框
  • 有关多线程的问题.对话框线程
  • 如何在退出对话框时结束对话框的工作线程
  • 模态对话框的OnPaint函数总是报错
  • 使用teamsource时老是弹出报错对话框:
  • 非模态对话框在PostNcDestroy()中delete this报错

关键词

  • 文件
  • socket
  • socksrc
  • serverthreadproc
  • servermaxbuf
  • afxbeginthread
  • defualtfile
  • sockaddr
  • pparam
  • onstart

得分解答快速导航

  • 帖主:awnuce1

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo