|
|
发表于 2004-6-29 16:56:28
|
显示全部楼层
试试看下面的:3 w% V& |1 |4 e& C
- void creadHost(){
2 ]$ a) _5 I* `' b" f - WSADATA wsaData;+ X! B. I+ `" k5 w
-
1 R4 j) {' n( t& o3 N - if(WSAStartup(WINSOCK_VERSION,&wsaData)){. B# D8 Y& n7 e& i0 p4 c) O
- MessageBeep(MB_ICONSTOP);" f1 ^" z7 k, B. c2 Q4 y
- printf("Winsock could not be initialized!\\n");% `1 D9 G% b" _
- WSACleanup();
/ T7 M g% T( B0 x& h - return;, Q+ C0 p1 Z$ Z4 x2 F/ @
- }, `( O9 X/ |6 z' [. J
- if(m_hSocket!=NULL){+ H( D" N0 F v% Q3 i
- closesocket(m_hSocket);( T! N4 I# O% j
- m_hSocket=NULL;7 z( q! W# N; Q) T2 |! y0 ~
- }
6 _2 j1 G$ M) i: H - if(m_hSocket==NULL){
1 J. o* n, B9 ?+ L - m_hSocket=socket(AF_INET,SOCK_STREAM, 0);
+ v3 l' b7 y8 x+ y3 O1 F! a& M s - }
0 A. y# a+ Z, A& c - m_addr.sin_addr.S_un.S_addr=INADDR_ANY;
1 H0 `' E2 Y6 b* |5 m/ S - m_addr.sin_family=AF_INET;/ @' s- N* `: F: C$ ~
- m_addr.sin_port=htons(5000);3 `) j* w' y8 N g5 g
$ Q4 d) n, N; m+ R% f% M- int ret=0;
W8 M: g, n a6 D# M - ret=bind(m_hSocket,(LPSOCKADDR)&m_addr,sizeof(m_addr));
+ N* W4 V( k( \9 Y - if(ret==SOCKET_ERROR){( n, u; f5 S2 ]0 N7 P7 y* O- b
- closesocket(m_hSocket);
" B: q8 Z) d/ h$ |0 q9 Y% m7 j& F) H - printf("Bind Error.\\n");- R8 U2 n- W& _3 r" b. b
- return ;/ u1 H8 r5 l/ P1 z t$ X6 y1 Y- P
- }' e; M7 s% h1 Q# b7 P' u2 K. H
- WSACleanup();
$ k, G8 u) Z+ b' p7 X+ A8 {; Y, @ - }
复制代码 |
|