Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.02.2011, 17:53   #1
DKENT
Форумчанин
 
Регистрация: 09.09.2010
Сообщений: 114
Сообщение Работа с Proxy

Здраствуйте!!
Есть маленькая програмка!!!
Проверяет ip на сайте 2ip.ru)
Но проблема в следуюшем!
Вставляю список HTTP Proxy,нажимаю начать, програма работает,но если попалась прокся которая не работает то выскакивает ошибка


Что нужно дописать чтобы , если прокся не рабочая переходила к следуюшей прокси в списке Memo1


Цитата:
procedure TForm1.Button1Click(Sender: TObject);
var
str,id:string;
i,s:integer;
begin
for i := 0 to memo1.lines.Count-1 do
begin
IdHTTP1.AllowCookies := False;
IdHTTP1.HandleRedirects := False;
Idhttp1.Request.Host:='google.com';
IdHTTP1.Request.UserAgent :='Opera/9.80 (Windows NT 6.1; U; ru) Presto/2.7.62 Version/11.01';
IdHTTP1.ProxyParams.ProxyServer:=Co py(Memo1.Lines[i],1,Pos(':',Memo1.Lines[i])-1);
IdHTTP1.ProxyParams.ProxyPort:=StrT oInt(Copy(Memo1.Lines[i],Pos(':',Memo1.Lines[i])+1,Length(Memo1.Lines[i])));
str:=idhttp1.Get('http://2ip.ru');
s:= PosEx('<big>',str)+5;
id := Copy(str,s,PosEx('<',str,s)-s);
Memo2.Lines.Add(id);
end ;
end;
Заранее благодарен!
DKENT вне форума Ответить с цитированием
Старый 15.02.2011, 19:18   #2
zotox
Форумчанин
 
Регистрация: 09.09.2008
Сообщений: 395
По умолчанию

try except (или expect (точно не помню)) между str:=idhttp1.Get('http://2ip.ru');
zotox вне форума Ответить с цитированием
Старый 15.02.2011, 19:38   #3
DKENT
Форумчанин
 
Регистрация: 09.09.2010
Сообщений: 114
По умолчанию

Можно поподробнее?
Желательно на примере моего кода!
Попробовал так как вы сказали!
Програма вообше неработает!
Цитата:
procedure TForm1.Button1Click(Sender: TObject);
var
str,id:string;
i,s:integer;
begin
for i := 0 to memo1.lines.Count-1 do
begin
IdHTTP1.AllowCookies := False;
IdHTTP1.HandleRedirects := False;
Idhttp1.Request.Host:='google.com';
IdHTTP1.Request.UserAgent :='Opera/9.80 (Windows NT 6.1; U; ru) Presto/2.7.62 Version/11.01';
IdHTTP1.ProxyParams.ProxyServer:=Co py(Memo1.Lines[i],1,Pos(':',Memo1.Lines[i])-1);
IdHTTP1.ProxyParams.ProxyPort:=StrT oInt(Copy(Memo1.Lines[i],Pos(':',Memo1.Lines[i])+1,Length(Memo1.Lines[i])));
try
str:=idhttp1.Get('http://2ip.ru');
except
s:= PosEx('<big>',str)+5;
id := Copy(str,s,PosEx('<',str,s)-s);
Memo2.Lines.Add(id);
end ;
end;
end;

Последний раз редактировалось DKENT; 15.02.2011 в 19:56.
DKENT вне форума Ответить с цитированием
Старый 15.02.2011, 20:17   #4
Voody
Форумчанин
 
Регистрация: 22.06.2009
Сообщений: 310
По умолчанию

Код:
procedure TForm1.Button1Click(Sender: TObject);
var
str,id:string;
i,s:integer;
begin
for i := 0 to memo1.lines.Count-1 do
begin
IdHTTP1.AllowCookies := False;
IdHTTP1.HandleRedirects := False;
Idhttp1.Request.Host:='google.com';
IdHTTP1.Request.UserAgent :='Opera/9.80 (Windows NT 6.1; U; ru) Presto/2.7.62 Version/11.01';
IdHTTP1.ProxyParams.ProxyServer:=Co py(Memo1.Lines[i],1,Pos(':',Memo1.Lines[i])-1);
IdHTTP1.ProxyParams.ProxyPort:=StrT oInt(Copy(Memo1.Lines[i],Pos(':',Memo1.Lines[i])+1,Length(Memo1.Lines[i])));
try
str:=idhttp1.Get('http://2ip.ru');
s:= PosEx('<big>',str)+5;
id := Copy(str,s,PosEx('<',str,s)-s);
Memo2.Lines.Add(id);
except
end ;
end;
end;
Voody вне форума Ответить с цитированием
Старый 15.02.2011, 20:48   #5
DKENT
Форумчанин
 
Регистрация: 09.09.2010
Сообщений: 114
По умолчанию

Также работает!!!
Но если прокся которая начинается в цикле не пашет то выдает также ошибку
DKENT вне форума Ответить с цитированием
Старый 15.02.2011, 22:28   #6
Voody
Форумчанин
 
Регистрация: 22.06.2009
Сообщений: 310
По умолчанию

Не из-под среды запустите. Просто скомпилированный файл
Voody вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
работа MySQL через HTTP-proxy programmer1988 Работа с сетью в Delphi 2 13.08.2010 20:35
Icq и proxy Кинельски Работа с сетью в Delphi 17 12.03.2010 23:07
Socket и Proxy SoLL Работа с сетью в Delphi 3 01.07.2009 17:46
Proxy Paranoic Свободное общение 1 08.06.2007 08:48
Proxy Veytarn Свободное общение 6 17.12.2006 01:24