Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

ÓÃCSocket´´½¨C/S½á¹¹

CSocketÅÉÉúÓÚCAsyncSocket, ËùÓÐÊ©ÖîÓÚÉϵIJÙ×÷½ÔΪͬ²½²Ù×÷¡£±ÈÈçConnnect,ReceiveµÈ¡£
ͬ²½²Ù×÷µÄÓŵãÊǼòµ¥Ò×Ó㬵«È±µãÒ²ÏÔ¶øÒ×¼û£¬Ð§ÂʵÍÏ£¬ÒòΪÄã±ØÐëµÈµ½Ò»¸ö²Ù×÷Íê³ÉÖ®ºó²ÅÄܽøÐÐÏÂÒ»¸ö²Ù×÷¡£
Èç¹ûÄãºÜ¹ØÐÄЧÂÊ£¬¾ÍÓ¦¸ÃÓÅÏÈʹÓÃCAsyncSocket¡£·´Ö®¾ÍÓÃCSocket¡£
ÏÂÃ潫˵Ã÷ÈçºÎÓÃCSocket´´½¨¼òµ¥µÄ·þÎñÆ÷ºÍ¿Í»§¶Ë¡£
[´´½¨·þÎñÆ÷]
·þÎñÆ÷µÄÔË×÷ÓÐ5¸ö½×¶Î:
1. ´´½¨·þÎñÆ÷Socket²¢¿ªÆô¼àÌý¡£
2. »ñȡеĿͻ§¶ËÁ¬½ÓSocket£¬½«Ö®¼ÓÈë¿Í»§¶ËSocketÁбíÒÔ¹ÜÀíÖ®¡£
3. ¿Í»§¶ËSocket¶ÁÈ¡Êý¾Ý²¢·¢ËÍÊý¾Ý¡£
4. ¿Í»§¶ËÁ¬½Ó±»¶¯¹Ø±Õ£¬´ÓÁбíɾ³ý¡£
5. ³ÌÐò¹Ø±Õ£¬½ø¶ø·þÎñÆ÷Á¬½ÓÖ÷¶¯¹Ø±Õ¡£
ΪÁËά³Ö5½×¶ÎµÄÔË×÷£¬ÐèÒªÁ½ÖÖSocketЭͬ¹¤×÷, µÚÒ»ÖÖÓÃ×÷·þÎñÆ÷¼àÌý£¨¸ºÔð²½Öè1£¬2£¬5£©£¬µÚ¶þÖÖÓÃ×÷¿Í»§¶Ë¹ÜÀí£¨¸ºÔð²½Öè3£¬4£©¡£
Á½ÖÖSocket½ÔÅÉÉú×ÔCSocket, ͨ¹ýÖØд²»Í¬µÄCSocket³ÉÔ±º¯ÊýÒÔʵÏÖ²»Í¬µÄ¹¦ÄÜ¡£
Ç°ÕßÐèÒªÔÚ·þÎñÆ÷³õʼ»¯½×¶Î´´½¨³öÀ´CSocket::Create()²¢¿ªÆô¼àÌýCSocket::Listen()£¨²½Öè1£©¡£²¢ÔÚ·þÎñÆ÷Í˳öʱÖ÷¶¯¹Ø±ÕÁ¬½ÓCSocket::Close()£¨²½Öè5£©¡£
Ç°Õß»¹ÐèÒªÖØдOnAcceptÒÔÔÚеĿͻ§¶ËÁ¬½Óµ½À´Ê±±»Í¨Öª£¬Í¬Ê±²úÉú¿Í»§¶Ë¹ÜÀíSocket£¨²½Öè2£©¡£
ºóÕßÐèÒªÖØдOnReceiveÒÔÔÚÓÐÊý¾Ýµ½À´Ê±±»Í¨Öª£¬»òÖØдOnCloseÒÔÔÚÁ¬½Ó±»¶¯¹Ø±Õ£¨¿Í»§¶Ë¹Ø±Õ£©Ê±±»Í¨Öª£¨²½Öè3£¬4£©¡£
¶ÁдÊý¾ÝÐèÒªCSocketFileÒÔ¼°CArchieveµÄÖ§³Ö¡£Ç°Õß½«CSocketµ±×÷Ò»¸öÎļþ£¬ºóÕßÔòÍê³ÉÔÚ´ËÎļþÉϵĶÁд²Ù×÷¡£
ͨ³£ÄãÐèÒªÌí¼ÓÒ»¸öCSocketFile³ÉÔ±£¬Á½¸öCArchieve³ÉÔ±£¨Ò»¸öÓÃÓÚ¶Á£¬Ò»¸öÓÃÓÚд£©£¬È»ºóÔÚSocket´´½¨Íê³Éºó³õʼ»¯ÕâЩ³ÉÔ±
socketFile_ = new CSocketFile( this ); // ÔÚarchive´´½¨³öÀ´ºó»ù±¾ÉϾͲ»ÐèÒª²Ù×÷ËûÁË£¬Ö±µ½Socket¹Ø±Õ
archiveIn_ = new CArchive( socketFile_, CArchive::load ); // ÓÃÓÚ¶Á
archiveOut_ = new CArchive( socketFile_, CArchive::store ); // ÓÃÓÚÈ¡
²¢ÔÚOnRecevieÖÐÓÃarchiveIn_¶ÁÈ¡Êý¾Ý£¬ÓÃarchiveOut_дÈëÊý¾Ý¡£ÏñÕâÑù£º
int value;
archiveIn_ >> value;
archiveOut_ << value * value;
ÏÂÃæÊDZȽÏÍêÕûµÄServer¶ËµÄÔ´´úÂë:
//---------------------------------------------------------------------------------
// CServerDoc.cpp
//---------------------------------------------------------------------------------
BOOL CServerDoc::OnNewDocument()
{
   &nb


Ïà¹ØÎĵµ£º

ÓÃCдµÄ3DÃÔ¹¬

          Boss˵£¬Òª¿´OpenGL£¬¿´ÁË¿ìÒ»¸öÔ£¬×ÜËã³öÁ˸öÏñÑùµÄ¶«Î÷£¬ÓÃCдÁ˸ö3DÃÔ¹¬£¬
ËäȻֻÓÐ350ÐÐ
       ´úÂ룬²»¹ý±ßѧ±ßд£¬×ã×ãдÁËÒ»ÖÜʱ¼ä£¬»¹ÊÇСÓгɾ͸еģ¬»î»î»î£¡
         &n ......

Ò»¸öͨѶ¼´úÂë¡£Ìṩ²Î¿¼£¬Ð´µÄ¼È²»Ïñc£¬ÓÖ²»Ïñc++

#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <windows.h>
#include <iostream>
using namespace std;
class student{
private:
 char name[20],addr[40];
 char id_number[40],phone[20];
public:
 void searchstud_info();
 void ......

Linux C notes (BOOK UNIX)

Chapter 1: Thread
¢Ù thread functions
1. pthread_self();
2. thread existing
    you can get the value of rval_ptr just by  pthread_join(pthread_t tht, void ** rval_ptr)
    cancel a thread as the thread exits with PTHREAD_CANCELED in pthread_exit, this functio ......

×Ô¶¯¸ü¸Ä×ÀÃæ±³¾° c/c++ win32

Õâ¸ö³ÌÐò½ö¹©±à³Ì²Î¿¼
ÈôÏëÔÚƽʱÓã¬ÇëÏÂÔØ΢ÈíµÄwallpaper changer
ÎÒÕâ¸ö³ÌÐòʵÏÖÁ˶¨Ê±¸ü»»×ÀÃæ±³¾°µÄ¹¦ÄÜ
ÃüÁîÐÐ wallpaper "your images' directory path" time_in_minute
±à³ÌÒªµã
findfirstfile findnextfile ²éÕÒͼÏñÎļþ
SystemParametersInfo  ÐÞ¸ÄϵͳÐÅÏ¢£¬ÔÚÕâ¶ùµ±È»ÊÇ×ÀÃæ±³¾°
×¢²á±í²Ù×÷ ±£´æÐ ......

C´úÂë»ìÏýÖ®ÂÃ

´ÓÌìÌÃ×ßÏòµØÓüµÄÁù²¿... 1
µÚÒ»²½¡¢°Ñfor±ä³Éwhile. 2
µÚ¶þ²½£¬°ÑÑ­»µ±ä³ÉµÝ¹é... 2
µÚÈý²½£¬ÅªÂÒ´úÂë½á¹¹/ʹÓÃûÓк¬ÒåµÄ±äÁ¿Ãû... 3
µÚËIJ½£¬È¡ÏûÁÙʱ±äÁ¿... 3
µÚÎå²½£¬¼ÌÐøŪÂÒ±äÁ¿Ãû... 4
µÚÁù²½£¬ÒƳý³£Á¿... 4
 
´ÓÌìÌÃ×ßÏòµØÓüµÄÁù²¿
¿ªÊ¼³ÌÐò
ÏÂÃæÊÇÒ»¸öÕÒ³öËØÊýµÄ³ÌÐò£º
 
²é¿´Ô´´úÂë´òÓ¡ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ