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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 06.05.2009, 23:16   #41
crystalbit
ГОСТ 2.403-75
Пользователь
 
Аватар для crystalbit
 
Регистрация: 04.05.2009
Сообщений: 92
По умолчанию

мб ты уничтожаешь уже уничтоженный sl?
мой скромный delphi блог
crystalbit вне форума Ответить с цитированием
Старый 06.05.2009, 23:29   #42
Terikon
Форумчанин
 
Регистрация: 22.02.2009
Сообщений: 174
По умолчанию

да нет в чём то другом проблема
Terikon вне форума Ответить с цитированием
Старый 07.05.2009, 04:05   #43
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

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

Напиши так:
Код:
procedure TForm1.Timer1Timer(Sender: TObject);
var
 i: integer;
 SL: TStringList;
 str: string;
 pos_: integer;
 Server, Port: string;
begin
 SL:=TStringList.Create;

 SL.LoadFromFile('Proxy.txt');

   if sl.Text=''
 then begin
 Timer1.Enabled:=false;
  ShowMessage ('Список пуст');
 exit;
 end;
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Старый 07.05.2009, 10:12   #45
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

crвstalbit, он вообще то вызывает Free, а Destroв. так что проблема точно не в этом...у меня мысль насчет цикла...что SL уничтожается а цикл идет на след круг
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 07.05.2009, 10:24   #46
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

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

Смотрю сниффером, "жму на кнопку стоп", проверка проксь останавливается, если присутствует соединение со статусом подключения (Pending...) то, программу можно закрыть полностью только после получения статуса OK(соединение установленно) или Falied(ошибка) то тогда программа полностью завершается и выскакивает вышеуказанная ошибка.

Видимо нужно как то принудительно останавливать не ожидая ответа от сайта.

Пробывал ставить IdHttp1.Disconnect не помогло

Последний раз редактировалось Terikon; 07.05.2009 в 15:08.
Terikon вне форума Ответить с цитированием
Старый 07.05.2009, 15:46   #48
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

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

#|Program |URL |Status |
1 project2.exe http://getmyip.ru/ Pendig...
2 project2.exe http://getmyip.ru/ Pendig...

IdHttp1.ReadTimeout:=10000;
idhttp1.get('http://getmyip.ru/');

Канешно если выставить
IdHttp1.ReadTimeout:=100;
То при нажатии кнопки Стоп, всё останавливается потому что с таким таймаутом все соединения принимают статус Falied

Мне таймаут нужен минимум 10000
После нажатия на кнопку стоп нужно дождатся когда соединение примет статус Falied или ОК, например через (10сек)

Кнопка Стоп
sl.Free;
//нужно дождатся когда соединение примет статус Falied или ОК, например через (10сек)//
exit;
Terikon вне форума Ответить с цитированием
Старый 07.05.2009, 16:54   #50
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

ну так и дождись... while тебе в ркуи)
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 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