|
发表于 2004-6-29 16:56:28
|
显示全部楼层
试试看下面的:8 y! P4 _9 \0 C3 `7 ~0 ?
- void creadHost(){+ v! T1 b# H+ i7 d: s3 X
- WSADATA wsaData;* S5 ^4 t$ f! C) z9 N _
- % {3 b3 h( |& m& Q% b
- if(WSAStartup(WINSOCK_VERSION,&wsaData)){
+ A2 Y5 I8 T/ B+ J9 V0 J" ` - MessageBeep(MB_ICONSTOP);
+ m. B* i/ s% Q% L - printf("Winsock could not be initialized!\\n");! t- S( l1 w: E- o" Q3 C
- WSACleanup();
2 l' ]- k: k! N - return;$ o6 x+ v/ I. V' @$ M: o0 Y
- }
" O/ L; j0 O* i3 R" W% A8 m+ t - if(m_hSocket!=NULL){+ @( \ c7 b! A) T8 e. S! x
- closesocket(m_hSocket);7 A# k% ~: Z3 a) a2 P
- m_hSocket=NULL;( e x& O, w0 U- d
- }% R( t' Y8 R0 I4 n; }
- if(m_hSocket==NULL){ u: {; ]+ L3 R3 U! s. ^, j& x5 f9 b
- m_hSocket=socket(AF_INET,SOCK_STREAM, 0);
1 t9 F: d7 ~1 z" v) a - }0 k O. Y C* `3 x
- m_addr.sin_addr.S_un.S_addr=INADDR_ANY;- O4 b; R1 E3 ~4 W |; e& q
- m_addr.sin_family=AF_INET;% s a$ x! @1 @( J0 n9 v% S
- m_addr.sin_port=htons(5000);: h% r$ S i) g7 ]: c- l
% s) e( Y+ n0 P: X1 }- int ret=0;
. i# r( ?. B6 @% g, b( S0 t9 b - ret=bind(m_hSocket,(LPSOCKADDR)&m_addr,sizeof(m_addr));7 m G8 z- t7 _2 b6 ^ }: s4 c! J1 u
- if(ret==SOCKET_ERROR){$ n- \" G1 E( q" Q& p( f
- closesocket(m_hSocket);
- O8 V% e; F" d1 p - printf("Bind Error.\\n");/ d; p0 z- }; S" M. n
- return ;4 G/ o0 n( ?* ^/ \: L9 G& O0 x
- }
4 Z q3 H( n* V1 n, Q9 T* h8 ?( b - WSACleanup();, A6 ^3 F S% O
- }
复制代码 |
|