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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.05.2009, 08:42   #21
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

а зачем вы в любом случае удаляете строку из файла ? т.е. не важн удачно произошла операция или нет, строка все равно удалится ?
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Старый 05.05.2009, 12:13   #22
Terikon
Форумчанин
 
Регистрация: 22.02.2009
Сообщений: 174
По умолчанию

Цитата:
Сообщение от Квэнди Посмотреть сообщение
а зачем вы в любом случае удаляете строку из файла ? т.е. не важн удачно произошла операция или нет, строка все равно удалится ?
Да на данный момент так нужно, после зделаю чтобы рабочие прокси сохранялись в отдельный файл.
Terikon вне форума Ответить с цитированием
Старый 05.05.2009, 12:39   #23
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

ок, но вы не обрабатываете никак возникшую ошибку... что мешает написать ну хотя бы так
Код:
try
 SL.LoadFromFile('Proxy.txt');
   if sl.Text=''
 then begin
 ShowMessage ('Файл пуст');
 exit;
 end;

 for i:=0 to SL.Count-1 do
 begin
  str:=SL[i];
  pos_:=pos(':', str);
  Server:=copy(str, 1,  pos_-1);
  Port:=copy(str, pos_+1, length(str) - pos_);
  end;
  begin
try
IdHttp1.ProxyParams.ProxyServer:=(Server);
IdHttp1.ProxyParams.ProxyPort:=StrToInt(Port);
idhttp1.get('http://whatismyip.com/automation/n09230945.asp');
except
//Обработка исключительной ситуации
end;
end;
 finally
 SL.Delete(0);
 SL.SaveToFile('Proxy.txt');
Timer1.Enabled:=true;
   SL.Free;
    end;
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Старый 05.05.2009, 17:16   #24
Terikon
Форумчанин
 
Регистрация: 22.02.2009
Сообщений: 174
По умолчанию

щас вроде ошибка перестала вылетать но появилась другая проблема
в файле Proxy.txt находятся
208.74.174.142:3128
210.51.54.165:9090
216.240.136.189:80
200.175.16.150:8080
194.160.76.5:80

Так вот, когда я жму на кноку удаляются все прокси и остаётся только последняя строчка 194.160.76.5:80 и через неё происходит 5 подключений (зависить от количества прокси в списке, например если 10 прокси то 10 попыток) после этого появляется сообщение 'файл пуст'.
Может я не туда вставил
Код:
 SL.Delete(0);
 SL.SaveToFile('Proxy.txt');
Terikon вне форума Ответить с цитированием
Старый 05.05.2009, 19:20   #25
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

код показывайте
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Старый 05.05.2009, 19:37   #26
Terikon
Форумчанин
 
Регистрация: 22.02.2009
Сообщений: 174
По умолчанию

Код всё тот же (23пост) здесь я добавил уведомление ShowMessage
Код:
except
//Обработка исключительной ситуации
ShowMessage('Ошибка');
end;
end;
Terikon вне форума Ответить с цитированием
Старый 05.05.2009, 20:02   #27
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

Вы знакомы с принципами работы блоков try..finally ? Код в блоке Finally выполняется в любом случае.
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Старый 05.05.2009, 21:15   #28
Terikon
Форумчанин
 
Регистрация: 22.02.2009
Сообщений: 174
По умолчанию

Да я знаю что то что находится в Finally выполняется в любом случае,
куда только я эти данные не вставлял

Код:
SL.Delete(0);
SL.SaveToFile('Proxy.txt');
результат один
Terikon вне форума Ответить с цитированием
Старый 05.05.2009, 21:43   #29
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

покажите всю функцию
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 05.05.2009, 22:00   #30
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

Так какие должны удалиться ?
Вобщем напишите так
Код:
try
 SL.LoadFromFile('Proxy.txt');
   if sl.Text=''
 then begin
 ShowMessage ('Файл пуст');
 exit;
 end;

 for i:=0 to SL.Count-1 do
 begin
  str:=SL[i];
  pos_:=pos(':', str);
  Server:=copy(str, 1,  pos_-1);
  Port:=copy(str, pos_+1, length(str) - pos_);
  end;
  begin
try
IdHttp1.ProxyParams.ProxyServer:=(Server);
IdHttp1.ProxyParams.ProxyPort:=StrToInt(Port);
idhttp1.get('http://whatismyip.com/automation/n09230945.asp');
except
 SL.Delete(0);
 SL.SaveToFile('Proxy.txt');
Timer1.Enabled:=true;
//Обработка исключительной ситуации
end;
end;
 finally
   SL.Free;
    end;
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи

Последний раз редактировалось Квэнди; 05.05.2009 в 22:30.
Квэнди вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
чекер DeDoK Общие вопросы Delphi 0 15.04.2009 22:26
Прокси FROSTMORN Безопасность, Шифрование 2 20.11.2008 15:17
Прокси в IdHTTP AVer Работа с сетью в Delphi 0 10.10.2008 20:30
Прокси russian-stalker Общие вопросы Delphi 1 07.09.2008 19:36
Прокси Simply-Art Свободное общение 4 19.05.2007 13:25