|
发表于 2004-6-29 16:56:28
|
显示全部楼层
试试看下面的:
+ {6 x1 A/ f' `6 O! L5 i- v* m- void creadHost(){ m+ V& x4 `; t. m2 ]5 M
- WSADATA wsaData;
- B! d6 W7 U6 W -
( X. _2 P0 K) d e- w1 U2 D - if(WSAStartup(WINSOCK_VERSION,&wsaData)){
/ ^, N4 h2 @, | - MessageBeep(MB_ICONSTOP);
8 q) j: p0 R- h; w - printf("Winsock could not be initialized!\\n");
" C3 j8 k) J1 d - WSACleanup();* j& Y* ]9 @+ l, p# s/ t0 P
- return;
" h% t; b' ~ d o7 b& [ - }: a0 s4 ~7 [2 [) T) a+ O: F
- if(m_hSocket!=NULL){4 g# D' R/ d; O5 i
- closesocket(m_hSocket);
! Z8 U2 ~. @ d8 c - m_hSocket=NULL;5 z. E7 y" l% o5 q0 _ D( R( I
- }
, U/ R7 I. ~4 W2 D5 r* S" D* U - if(m_hSocket==NULL){$ i# V% u8 m& B& ?
- m_hSocket=socket(AF_INET,SOCK_STREAM, 0); ' }9 J+ ]" v6 d5 n) P3 x( {
- }$ k! n# W, k! N; A' H8 o- s/ v
- m_addr.sin_addr.S_un.S_addr=INADDR_ANY; W z2 e4 ~7 q0 h1 @% d
- m_addr.sin_family=AF_INET;
; { W( A' K) i8 t. V6 z: T# u/ h - m_addr.sin_port=htons(5000);+ ^9 L% x* D* L I: l7 J. t0 A
- + i6 `4 a( M7 |5 f. }0 b
- int ret=0;
% I. v$ q. p/ @2 i - ret=bind(m_hSocket,(LPSOCKADDR)&m_addr,sizeof(m_addr));
5 g1 Z" k5 \" i: ~0 e( Y8 X - if(ret==SOCKET_ERROR){
. m3 O- f0 }* R; F" G5 c: q* m2 B - closesocket(m_hSocket);
7 R5 l, c/ c" h! K, i - printf("Bind Error.\\n");
( l# i! C' \3 E+ `& |+ J& d - return ;
; }7 U# d2 u* s! P/ Q - }
" y2 u" ]; w. x - WSACleanup();
% }6 p u- a8 e" x, l" A - }
复制代码 |
|