Привет, Horsun!
Вы пишешь 21 мая 2007:
HV> PS Народ, кто в курсе - второй последовательный вызов WSAGetLastError
HV> может затереть ошибку возвращённую первым вызовом ?
Не должен, но может ;)
Она может возвращать несколько кодов последовательно.
При этом первоначальный код, полученный самым первым
вызовом будет получен только однажды.
Например:
=========Beginning of the citation==============
var
Error: DWORD;
HostEntry: PHostEnt;
Data: WSAData;
begin
Error := WSAStartup(MakeWord(1, 1), Data);
if Error = 0 then
begin
HostEntry := gethostbyname('никогонетдома');
if (HostEntry = nil) then
repeat
Error := WSAGetLastError();
until MessageBox(Self.Handle, PChar(Format('Error = %d', [Error])),
'АшЫбка!', MB_ICONERROR + MB_RETRYCANCEL) = ID_CANCEL
else
MessageBox(Self.Handle, HostEntry.h_name, 'Host', MB_ICONINFORMATION);
end;
WSACleanup();
end;
=========The end of the citation================
у меня возвращает сперва 11001, а затем 1813
зы: не пиши осмысленный текст после подписи,
многие ньюс-читалки его режут.
--
With best regards, Alex Cherednichenko.