powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / не отрабатывает IdTCPClient3->Disconnect();
7 сообщений из 7, страница 1 из 1
не отрабатывает IdTCPClient3->Disconnect();
    #40033972
Mizer73
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
IdTCPClient3->Disconnect();
				InW11->Lines->Add("разорвал соединение");
				return;
			}
			catch(...)
			{
				InW11->Lines->Add("......");
			}
			if (IdTCPClient3->Connected())
				InW11->Lines->Add("ДА подключен");
			else
				InW11->Lines->Add("НЕ подключен");


при проверке после дисконекта, сообщает, что подключен.
что не так?
...
Рейтинг: 0 / 0
не отрабатывает IdTCPClient3->Disconnect();
    #40034041
Фотография makhaon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mizer73
Код:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
IdTCPClient3->Disconnect();
				InW11->Lines->Add("разорвал соединение");
				return;
			}
			catch(...)
			{
				InW11->Lines->Add("......");
			}
			if (IdTCPClient3->Connected())
				InW11->Lines->Add("ДА подключен");
			else
				InW11->Lines->Add("НЕ подключен");


при проверке после дисконекта, сообщает, что подключен.
что не так?

инди вся в исходниках. код относительно простой, сам с десяток мест успешно правил. отладка в помощь.
...
Рейтинг: 0 / 0
не отрабатывает IdTCPClient3->Disconnect();
    #40034150
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mizer73
что не так?

Например, асинхронный вызов. Подожди немного и еще раз проверь. Или проверь по нажатию кнопки.
...
Рейтинг: 0 / 0
не отрабатывает IdTCPClient3->Disconnect();
    #40034509
Mizer73
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
wadman,

проще взять нормальный инструмент и все переделать. Получилось кода в 4 рапза меньше, и никаких проблем.
...
Рейтинг: 0 / 0
не отрабатывает IdTCPClient3->Disconnect();
    #40034514
DmSer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mizer73

при проверке после дисконекта, сообщает, что подключен.
что не так?


Значит в буфере InputBuffer остались необработанные байты и необходимо их сперва считать и обработать.
Ну или хотя бы считать:

Код: pascal
1.
2.
while IdTCPClient3.Socket.InputBuffer.Size > 0 do
  IdTCPClient3.Socket.ReadByte(); 
...
Рейтинг: 0 / 0
не отрабатывает IdTCPClient3->Disconnect();
    #40034540
northener
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Mizer73
wadman,

проще взять нормальный инструмент и все переделать. Получилось кода в 4 рапза меньше, и никаких проблем.

Ну и где код, которым получилось?
...
Рейтинг: 0 / 0
не отрабатывает IdTCPClient3->Disconnect();
    #40034572
Фотография Kast2K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: pascal
1.
2.
3.
4.
IdTCPClient3.Disconnect(False);

if Assigned(IdTCPClient3.IOHandler) then
  IdTCPClient3.IOHandler.InputBuffer.Clear;
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / не отрабатывает IdTCPClient3->Disconnect();
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]