
14.02.2010, 00:02
|
|
Постоянный
Регистрация: 13.12.2008
Сообщений: 354
Провел на форуме: 1747641
Репутация:
175
|
|
У меня все работает стабильно, сервак возвращает код 200.
Я кое-что поменял.
Код:
socks5_req_TPC.ip:=inet_addr(Pansichar(GetipAddress(form1.edit2.Text)));
на
Код:
socks5_req_TPC.ip:=Integer(LookupName(form1.edit2.Text));
Код функции LookupName:
Код:
function LookupName(str: String): TInAddr;
var
_hostEnt:PHostEnt;
_inAddr:TInAddr;
begin
if (str[1] in ['a'..'z']) or
(str[2] in ['a'..'z']) then
begin
_hostEnt := getHostByName(pchar(str));
FillChar(_inAddr, sizeOf(_inAddr), 0);
if _hostEnt<>nil then
begin
with _hostEnt^, _inAddr do
begin
s_un_b.s_b1 := h_addr^[0];
s_un_b.s_b2 := h_addr^[1];
s_un_b.s_b3 := h_addr^[2];
s_un_b.s_b4 := h_addr^[3];
end;
end;
end
else
_inAddr.s_addr := inet_addr(pchar(str));
Result:= _inAddr;
end;
Также вот эту строку:
Код:
SockAddrIn.sin_addr.s_addr := inet_addr(Pansichar(PROXY_IP));
изменил на:
Код:
SockAddrIn.sin_addr := LookupName(PROXY_IP);
|
|
|