|
|
发表于 2004-6-29 16:56:28
|
显示全部楼层
试试看下面的:
7 P8 \, W) O% t& ~- void creadHost(){
. }* _. m& v: D' n8 z3 J - WSADATA wsaData;, G- }5 h# d! E# N3 @
- 8 E% r7 ]* Q5 B, N n0 M" l2 B" H
- if(WSAStartup(WINSOCK_VERSION,&wsaData)){- e$ a2 d1 |3 x6 k
- MessageBeep(MB_ICONSTOP);
( e" @' [* p! V5 d9 p3 m - printf("Winsock could not be initialized!\\n");
, B) J$ f$ U4 I% e* d) a5 C. M - WSACleanup();: ?/ p' H0 P" N! H. E# ]
- return;/ b8 }+ [5 ^- h& [4 }2 ^
- }
5 L6 t9 v) T% j3 W( ^$ r' p* }* T0 @ - if(m_hSocket!=NULL){ c$ _- g* x$ U. `( `+ z
- closesocket(m_hSocket);1 E8 q8 D r2 D) O$ Z" u: e
- m_hSocket=NULL;8 Y" i8 z0 Q: ^+ ?4 ]$ S
- }
( T0 ?. X, ~* U2 ? - if(m_hSocket==NULL){
4 k# n' Z: r0 ^+ c. n, ^8 z- ^ - m_hSocket=socket(AF_INET,SOCK_STREAM, 0);
6 H5 R+ s3 b7 i8 y; u U- V1 o7 X - }. }2 E1 t5 k1 s) E
- m_addr.sin_addr.S_un.S_addr=INADDR_ANY;
i, w, V+ X" M4 }( s' n$ b - m_addr.sin_family=AF_INET;' q$ z& @8 a. x& ]8 {
- m_addr.sin_port=htons(5000);: ^9 _2 V; a M1 I1 |
4 h) `0 W* `6 F5 [ @( }" I0 s' G; n- int ret=0;8 T! K* x+ h% B* H" V
- ret=bind(m_hSocket,(LPSOCKADDR)&m_addr,sizeof(m_addr));" e/ U# w4 T6 f* u2 Y6 C
- if(ret==SOCKET_ERROR){
9 k& `' G1 c( Q$ l* ` - closesocket(m_hSocket);& q7 W) v+ a! r- b1 E* p
- printf("Bind Error.\\n");
) `9 A6 V! O1 Y r5 N9 p - return ;4 y! a) }5 Z! L4 t8 u
- }
/ v$ v; e* C& F8 F/ T7 ~" U - WSACleanup();
. V+ B* j4 ]' Y& g a: R2 g4 ]* C - }
复制代码 |
|