|
|
发表于 2004-6-29 16:56:28
|
显示全部楼层
试试看下面的:
$ ~' \; `' ?2 y: G* k+ M; |- void creadHost(){
* Q% y8 n+ D- Q( s2 E$ p1 S' c% { - WSADATA wsaData;
2 h$ D! W$ n, i" V; ~7 r; Z. e- O+ l: v - & J" G5 G7 z( O
- if(WSAStartup(WINSOCK_VERSION,&wsaData)){
: h, V: Y# V1 U* j. c; [* n) S - MessageBeep(MB_ICONSTOP);
& Y8 U- N; @+ }) g - printf("Winsock could not be initialized!\\n");
. k% j: @0 W' A* l3 C - WSACleanup();
* r- D2 s! ^. _" J4 t) m0 k& `' s - return;1 m, K. V7 S0 }9 ?; \4 M1 i0 X$ J( S
- }
( C6 m f3 a( X! g9 X) I - if(m_hSocket!=NULL){& U' l& \3 v; Y% C6 M
- closesocket(m_hSocket);
! d8 @3 `4 Q# o4 O( {% n; {% R - m_hSocket=NULL;, E5 ]! i9 U% Z. @1 Q. {" L
- }
' o. G$ E* m. D8 @ - if(m_hSocket==NULL){
- i" b% u+ j0 y( ? - m_hSocket=socket(AF_INET,SOCK_STREAM, 0); 6 o; k& ]0 s3 E; H* [
- }' y" k* ~) O; g% E9 M; i0 [( l
- m_addr.sin_addr.S_un.S_addr=INADDR_ANY;
' F: {8 q3 r3 U - m_addr.sin_family=AF_INET;" V1 j" G0 d) L8 W" |. n
- m_addr.sin_port=htons(5000);
- h M5 x, B+ |$ F - ; f, B4 X" x9 |9 f' z* m
- int ret=0;
k3 [+ Y6 P \2 ]& c - ret=bind(m_hSocket,(LPSOCKADDR)&m_addr,sizeof(m_addr));% l/ q1 E4 {0 r Q b8 ^# \( b
- if(ret==SOCKET_ERROR){
@8 N! J6 j5 ~$ x& x7 {" D: W& h" b& i" T - closesocket(m_hSocket);" t& C7 P) Z* m, w
- printf("Bind Error.\\n");) Z/ n I$ y* p; k2 h
- return ;8 n8 `8 b( h) p' Z1 H7 q4 K
- }* L. T% Q9 @. h% X* {# O+ |/ d& s
- WSACleanup();3 g3 b/ B- @: t4 K3 y( n
- }
复制代码 |
|