|
|
发表于 2004-6-29 16:56:28
|
显示全部楼层
试试看下面的:
/ [* L& O, o- @, J8 _4 ^- void creadHost(){. H* g- Q2 g) [/ B
- WSADATA wsaData;$ x" S3 A& H8 Y+ F
- & @& W/ }# _) b" k' x8 G3 r
- if(WSAStartup(WINSOCK_VERSION,&wsaData)){5 ]- s H" Q% `! q( B
- MessageBeep(MB_ICONSTOP);
) A3 l: A1 S/ n B1 Z% { - printf("Winsock could not be initialized!\\n");0 l/ _( F) k7 c3 y! i3 S, `
- WSACleanup();( B5 E3 H$ _3 L! R% C7 O' q" \9 q4 q
- return;
4 V% \- [5 _, G" k! N. U - }* M. [1 H) `( c3 }% P
- if(m_hSocket!=NULL){+ h( ~- X0 T: @
- closesocket(m_hSocket);6 d, b+ V4 o6 i+ t: _
- m_hSocket=NULL;
6 \6 _7 F# i9 V( _ C# ]: }" _ - }
. O; s6 Y" \- b! p( M) ~" a% t - if(m_hSocket==NULL){
2 {6 o) y8 W: Y, I6 {6 z7 } - m_hSocket=socket(AF_INET,SOCK_STREAM, 0); . z0 W9 \$ t E! l/ j" \) C4 n
- }8 i7 x4 k0 A$ V
- m_addr.sin_addr.S_un.S_addr=INADDR_ANY;
; }' [" l. |: A- A - m_addr.sin_family=AF_INET;
3 Z) D' g$ h: ]. k1 a2 k2 U - m_addr.sin_port=htons(5000);
* N2 r' K4 I6 {$ F* w - . c7 g8 S' Q7 a* J+ p8 t Y0 L+ Q4 W
- int ret=0;: [$ r/ h% N3 @: y1 _ {1 ?
- ret=bind(m_hSocket,(LPSOCKADDR)&m_addr,sizeof(m_addr));- q5 C6 y8 ?4 v; m2 s8 ^, m
- if(ret==SOCKET_ERROR){
`: |& K5 Y. x3 J4 { - closesocket(m_hSocket); O" N- S: C/ P# x8 C/ }
- printf("Bind Error.\\n");
' a9 Z7 m5 q$ }3 q - return ;- V8 C3 S3 S6 D" L' W
- }' K' m. ?8 j( B- S: G
- WSACleanup();( E x$ c9 C; i5 u% c$ e
- }
复制代码 |
|