|
|
发表于 2004-6-29 16:56:28
|
显示全部楼层
试试看下面的:. P) ]- [3 R5 V' d4 t
- void creadHost(){2 K* O6 B( n8 S1 g8 K8 [
- WSADATA wsaData;% B1 V: _, l$ y7 Y
-
9 c" a. d" D) Y2 Q1 j) u2 W/ H/ u% } - if(WSAStartup(WINSOCK_VERSION,&wsaData)){
# g; f7 n5 {: x9 h) f6 S - MessageBeep(MB_ICONSTOP);
2 T/ d! }9 \" Z' @$ G2 O! L - printf("Winsock could not be initialized!\\n");7 W0 _3 M5 i9 O9 z7 Y1 o
- WSACleanup();
4 y" \9 N4 Z: p6 f8 e& \( u - return;
/ W. Y3 }7 ?. h3 A - }
8 [1 q9 K# i: l3 j: D4 j' x - if(m_hSocket!=NULL){
) F! }: c% {+ g. [ - closesocket(m_hSocket);" q0 w; A" U6 v" B$ m4 E
- m_hSocket=NULL;4 p, L0 d; e/ H3 D8 i( ~+ g; J" z
- }$ ]4 [/ ^% b8 B1 A% J' F# t6 f
- if(m_hSocket==NULL){
, Q3 m0 A# w' }9 L# U - m_hSocket=socket(AF_INET,SOCK_STREAM, 0); " o. `7 W5 o$ z
- }/ G% ]) ], e' y, C, i& p! E% c
- m_addr.sin_addr.S_un.S_addr=INADDR_ANY;
" S4 b4 V2 v0 |2 P - m_addr.sin_family=AF_INET;3 I0 ~7 z6 b/ j$ }' X4 I$ ]4 Z9 m
- m_addr.sin_port=htons(5000);
8 x" M3 h* F( O
2 r* r* l) h g9 l7 L6 ?; e- int ret=0;4 V3 t5 [1 T8 V2 Q, ^# v
- ret=bind(m_hSocket,(LPSOCKADDR)&m_addr,sizeof(m_addr));8 q- F3 f9 C C; ~& J2 _3 f
- if(ret==SOCKET_ERROR){
2 [7 J# p |4 u, }6 U - closesocket(m_hSocket);. r0 X0 K* r/ ?2 W" ~0 R
- printf("Bind Error.\\n");
* M @ Q2 N0 E( @0 S - return ;" N p" L4 Q- ^1 P' P- x0 \
- }: k# |3 [' |/ k9 U! I6 ~
- WSACleanup();5 m& p0 h, { Z& ]7 q
- }
复制代码 |
|