![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Работа с Telnet. [D7, WinXP]
Новичек © (2007-07-29 15:45:00)Уважаемые Мастера, поясните, пожалуйста, что у меня не так:
Создаю сокет и коннекчусь к телнет-серверу
WorkedSocket := socket(AF_INET, SOCK_STREAM, IPPROTO_IP);
if WorkedSocket = INVALID_SOCKET then Halt(1);
FillChar(WorkedSockAddr, SizeOf(TSockAddr), 0);
WorkedSockAddr.sin_port := htons(5000);
WorkedSockAddr.sin_family := AF_INET;
IP_Address := '192.168.23.12';
WorkedSockAddr.sin_addr.S_addr := inet_addr(PAnsiChar(IP_Address));
Connect(WorkedSocket, @WorkedSockAddr, SizeOf(TSockAddr));
При коннекте я ничего не получаю! Даже приглашение на логин :-(
Новичек (2007-08-11 08:22:00) [1]
> Тогда уж поделись, чтобы хоть темка полезной была.
Я взял компонент из библиотеки ICS (free with sources) для работы по протоколу telnet, законнектился с его помощью (handshake он делает сам) , а затем уже работаю, как с обычным сокетом. Ничего сложного. Правда, не хочется использовать компоненты, а посему я решил выяснить, как сервер "договаривается" с клиентом. Результатом явилась собственная реализация класса, который сам производит handshake.
SpellCaster (2007-07-30 17:15:00) [2]> [2] Новичек © (29.07.07 19:04)
Тогда уж поделись, чтобы хоть темка полезной была.
Belorus (2007-07-30 14:05:00) [3]В стародавние времена, когда интернет был только у очень серьёзных организаций, такого рода монологи происходили в головах программистов, и не выливались на общее обозрение.
Новичек (2007-07-29 19:04:00) [4]Все, сделал сам :-)
Приятно, черт возьми :-)
Новичек (2007-07-29 17:13:00) [5]Выяснил вот что:
Для нормальной работы по протоколу telnet следует сделать handshake.
А как?