WinSock Recvfrom() by gi? tr? v? WSAECONNRESET thay v? c?a ch?n ho?c th?i gian

D?ch tiu ? D?ch tiu ?
ID c?a bi: 263823 - Xem s?n ph?m m bi ny p d?ng vo.
Bung t?t c? | Thu g?n t?t c?


Trong Windows 2000, m?t chng tr?nh ng?i s? d?ng giao th?c Datagram (UDP) c th? khng lm vi?c v c th? t?o ra m?t ph?n ?ng WSAECONNRESET.


N?u g?i m?t datagram b?ng cch s? d?ng cc SendTo ch?c nng k?t qu? trong m?t ph?n ?ng "ICMP c?ng khng th? k?t n?i" v cc ch?n ch?c nng ?c thi?t l?p cho readfds, chng tr?nh tr? v? 1 v cc ti?p theo cu?c g?i ?n cc recvfrom ch?c nng khng lm vi?c v?i m?t l?i WSAECONNRESET (10054) ph?n ?ng. Trong Microsoft Windows NT 4.0, t?nh tr?ng ny gy ra cc ch?n ch?c nng ? ch?n ho?c th?i gian ra.


? gi?i quy?t v?n ? ny, c ?c gi d?ch v? m?i nh?t cho Windows 2000. ? bi?t thm thng tin, h?y b?m vao s? bi vi?t sau ? xem bi vi?t trong C s? Ki?n th?c Microsoft:
260910 Cach ly goi dich vu Windows XP mi nht
M?t ? c?m m?i IOCTL ?c g?i l "sio_udp_connreset" c ?c gi?i thi?u trong Windows 2000. Khi IOCTL ny ?c s? d?ng, chng tr?nh ph?i vi?t l?i ?c bi?t cho Windows 2000 c ?c Windows NT 4.0 g?c hnh vi. Windows NT 4.0, Microsoft Windows 95, v Microsoft Windows 98 c khng h? tr? ny IOCTL m?i. Ngoi ? vi?t l?i n c?a b?n, b?n s? c?n hotfix tham chi?u ti?p t?c xu?ng trong bi vi?t ny.

Cc o?n m? sau y ch?ng t? m?t k? thu?t c th? ?c s? d?ng ? g?i WSAIoctl v?i SIO_UDP_CONNRESET m? i?u khi?n ? c ?c cc c?a s? g?c Hnh vi c?a NT 4.0.
DWORDdwBytesReturned = 0;
BOOLbNewBehavior = FALSE;

// disable  new behavior using
status = WSAIoctl(sd, SIO_UDP_CONNRESET,
&bNewBehavior, sizeof(bNewBehavior),
                   NULL, 0, &dwBytesReturned,
                   NULL, NULL);

if (SOCKET_ERROR == status)
DWORD dwErr = WSAGetLastError();
// nothing to do
printf("WSAIoctl(SIO_UDP_CONNRESET) Error: %d\n", dwErr);
? c th? bin d?ch m? ny, b?n c?n ho?c c m?i nh?t Mswsock.h bao g?m ?nh ngh?a c?a SIO_UDP_CONNRESET ho?c ? chn d?i y ?nh ngh?a c?a n tr?c ti?p vo m? c?a b?n.
// MS Transport Provider IOCTL to control
// reporting PORT_UNREACHABLE messages
// on UDP sockets via recv/WSARecv/etc.
// Path TRUE in input buffer to enable (default if supported),
// FALSE to disable.
Chu y Hotfix ?c m t? trong bi vi?t ny s? gi?i quy?t v?n ? tr? khi chng tr?nh ?c vi?t l?i ? s? d?ng SIO_UDP_CONNRESET m?i IOCTL.

? bin d?ch m? ny, n l c?n thi?t ? c cc m?i nh?t n?n t?ng SDK ?c ci ?t trn my tnh c?a b?n. i?u ny c s?n t? cc MSDN Web site sau:


Microsoft ? xc nh?n r?ng y l m?t v?n ? trong cc s?n ph?m c?a Microsoft ?c li?t k ?u bi vi?t ny. V?n ? ny ? ?c s?a ch?a ?u tin trong Windows 2000 Service Gi 2.


? bi?t thm thng tin v? lm th? no ? ci ?t Windows 2000 v Windows 2000 hotfixes cng lc , nh?p vo s? bi vi?t sau ? xem bi vi?t trong c s? ki?n th?c Microsoft:
249149Ci ?t Microsoft Windows 2000 v Windows 2000 hotfixes

Thu?c tnh

ID c?a bi: 263823 - L?n xem xt sau cng: 21 Thang Tam 2011 - Xem xt l?i: 2.0
p d?ng
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition
T? kha:
kbhotfixserver kbqfe kbbug kbfix kbwin2000presp2fix kbmt KB263823 KbMtvi
My d?ch
QUAN TRONG: Bi vi?t ny ?c d?ch b?ng ph?n m?m d?ch my c?a Microsoft ch? khng ph?i do con ng?i d?ch. Microsoft cung c?p cc bi vi?t do con ng?i d?ch v c? cc bi vi?t do my d?ch ? b?n c th? truy c?p vo t?t c? cc bi vi?t trong C s? Ki?n th?c c?a chng ti b?ng ngn ng? c?a b?n. Tuy nhin, bi vi?t do my d?ch khng ph?i lc no c?ng hon h?o. Lo?i bi vi?t ny c th? ch?a cc sai st v? t? v?ng, c php ho?c ng? php, gi?ng nh m?t ng?i n?c ngoi c th? m?c sai st khi ni ngn ng? c?a b?n. Microsoft khng ch?u trch nhi?m v? b?t k? s? thi?u chnh xc, sai st ho?c thi?t h?i no do vi?c d?ch sai n?i dung ho?c do ho?t ?ng s? d?ng c?a khch hng gy ra. Microsoft c?ng th?ng xuyn c?p nh?t ph?n m?m d?ch my ny.
Nh?p chu?t vo y ? xem b?n ti?ng Anh c?a bi vi?t ny:263823

Cung cp Phan hi


Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from