|
|
发表于 2004-6-29 16:56:28
|
显示全部楼层
试试看下面的:5 {4 X; i* ]2 f
- void creadHost(){7 x3 O* ^8 N% K2 `1 K' R4 J
- WSADATA wsaData;
' A6 t, \ o9 J9 i -
& A8 g# Q; Z& ^/ ]* `! w - if(WSAStartup(WINSOCK_VERSION,&wsaData)){0 I& t% ~! y9 q& P4 Q' d
- MessageBeep(MB_ICONSTOP);) w$ v5 Z" k& Z/ @( t& y
- printf("Winsock could not be initialized!\\n");
8 k9 P6 \. g2 X1 h# B- F: [3 v0 Q - WSACleanup();
* y7 Y% @0 S7 _6 Y - return;2 h% j# f' P! S8 n
- }
9 T( w l8 N( ~8 \4 V, j - if(m_hSocket!=NULL){) S# }7 C7 `8 R9 Q
- closesocket(m_hSocket);7 c2 B* d1 t" E
- m_hSocket=NULL;% m, v/ N) B. i% F" ^: `- L+ l `; [
- }. M$ l, W. A8 {# ?& O
- if(m_hSocket==NULL){
' e2 z$ I" W; T2 z - m_hSocket=socket(AF_INET,SOCK_STREAM, 0);
1 r- f8 y; S. H: F; ~' g - }+ e, T9 A4 _" C
- m_addr.sin_addr.S_un.S_addr=INADDR_ANY;0 J( r; x% i# z9 d% y0 \
- m_addr.sin_family=AF_INET;
# f0 r f( {; h& \* } - m_addr.sin_port=htons(5000);
9 c+ }1 [& R( b& ]& i - 0 n' b T6 \# D- l; r$ E( o
- int ret=0;
! O$ J, [" ]/ M9 |: J2 y - ret=bind(m_hSocket,(LPSOCKADDR)&m_addr,sizeof(m_addr));$ _. J# G7 S( P8 S' x; s8 E
- if(ret==SOCKET_ERROR){
2 M6 q4 P$ X% p - closesocket(m_hSocket);# `+ |7 \$ n# L8 B( G( w" \4 h
- printf("Bind Error.\\n");
" i7 y1 P% z" d4 m7 F - return ;
# L5 a- z" j( h: I - }
& f* i2 W# T8 G; q, ?# W' Y - WSACleanup();& p: n1 B3 z' N( k
- }
复制代码 |
|