Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2007.07.29;
Скачать: [xml.tar.bz2];

Вниз

IdTelnet и получение ответов   Найти похожие ветки 

 
fishka   (2006-12-22 10:15) [0]

Использую компонент IdTelnet. При нажатии на кнопку отправляю команду и не могу получить ответа.
varr:="dir";
//  IdTelnet1.SendCmd(varr);  - не работает
for i:=1 to length(varr) do
  begin
   IdTelnet1.SendCh(varr[i]);
  end;
   IdTelnet1.SendCh(CR);
bufferr:=IdTelnet1.CurrentReadBuffer;


Все висит на последней строке. Где у меня ошибка?

Не получается и при использовании:
IdTelnet1.ReadStrings
IdTelnet1.ReadString
IdTelnet1.ReadStream
IdTelnet1.ReadCh
IdTelnet1.ReadLn
IdTelnet1.ReadBuffer

И, пожалуйста, не закрывайте мою ветку, пока не будет решения проблемы.


 
Сергей М. ©   (2006-12-22 10:35) [1]

http://book.itep.ru/4/45/tlnt_453.htm

Это уже проштудировано тобой ?


 
fishka   (2006-12-22 10:50) [2]

Прочитано в том или ином виде.
Сейчас я пытыюсь получать ответ от компа в локальной сети, на котором запущена Служба Telnet.
В командной строке после ввода имени и пароля можно выполнять досовские команды. И я хочу считать ответ по команде, например, dir, но не плучается.
Что я делаю не так?


 
Сергей М. ©   (2006-12-22 11:14) [3]

А стандартный консольный Telnet-клиент при этом нормально взаимодействует с сервером ?


 
fishka   (2006-12-22 11:16) [4]

Смотря что считать нормально. Досовские команды проходят.
Dir нормально выдает список.
Этот же список я хочу получить и через idTelnet в Дельфях.


 
Сергей М. ©   (2006-12-22 11:35) [5]

Тогда любой подходящей утилитой перехвати траффик между стандартной Telnet-консолью и Телнет-сервером и проанализируй, что в действительности передает Telnet-консоль серверу при выполнении команды (той же Dir, к примеру)

Подозреваю, что сервер ожидает в конце ком.строки не CR, а CRLF


 
fishka   (2006-12-22 11:58) [6]

IdTelnet1.SendCh(CR);
IdTelnet1.SendCh(LF);
bufferr:=IdTelnet1.CurrentReadBuffer;

Все равно висит.
Кстати, IdTelnet1.CurrentReadBuffer выдает значения в процедуре IdTelnet1Connect(Sender: TObject); Может, только там и можно использовать  CurrentReadBuffer?


> Тогда любой подходящей утилитой перехвати траффик между
> стандартной Telnet-консолью и Телнет-сервером

не понимаю... Если можно подробнее.......


 
Сергей М. ©   (2006-12-22 12:09) [7]


> Кстати, IdTelnet1.CurrentReadBuffer выдает значения в процедуре
> IdTelnet1Connect(Sender: TObject);


Разумеется выдает.

Вот цитата из упомянутого выше источника:

После того как TELNET связь установлена, начинаются переговоры об используемых опциях (см. табл. 4.5.3.1). Каждая из договаривающихся сторон может послать другой один из четырех запросов will, do, wont и dont (см табл. 4.5.3.4).


 
Сергей М. ©   (2006-12-22 12:25) [8]


> не понимаю... Если можно подробнее.


Про сетевые снифферы что-нть слыхала ?


 
fishka   (2006-12-22 12:38) [9]


> Каждая из договаривающихся сторон может послать другой один
> из четырех запросов will, do, wont и dont (см табл. 4.5.
> 3.4)

А почему из командной строки меня ни о чем не спрашивают?

Про сетевые снифферы что-нть слыхала - нет.


 
Сергей М. ©   (2006-12-22 12:41) [10]


> А почему из командной строки меня ни о чем не спрашивают?


А о чем тебя должны спрашивать ?


 
fishka   (2006-12-22 12:42) [11]


> начинаются переговоры об используемых опциях


 
Сергей М. ©   (2006-12-22 12:47) [12]


> fishka   (22.12.06 12:42) [11]


Это клиент с сервером договариваются)


 
fishka   (2006-12-22 13:19) [13]


> Это клиент с сервером договариваются)

А почему из командной строки только приглашение? И можно выполнять досовские команды? Из программы нужно что-то другое посылать?


 
Сергей М. ©   (2006-12-22 13:38) [14]


> Кстати, IdTelnet1.CurrentReadBuffer выдает значения в процедуре
> IdTelnet1Connect(Sender: TObject);


И какие же ?


 
fishka   (2006-12-22 13:48) [15]

Запрос на имя - посылаю имя, потом на пароль - посылаю пароль.
А потом не понятно: *ÿý (скопировалось, не так, как я вижу).


 
fishka   (2006-12-22 13:58) [16]

* от пароля. А в Memo выглядит так (примерно): яэ|


 
umbra ©   (2006-12-22 19:40) [17]

2 fishka

данные, которые возвращает сервер, можно обрабатывать в событии
OnDataAvailable.


 
fishka   (2006-12-25 10:27) [18]


> umbra ©   (22.12.06 19:40) [17]

Это тоже мой вопрос:
http://delphimaster.net/view/1-1166603258/

Мне тоже так казалось, но почему-то не каждый раз заходит в событие OnDataAvailable.

До сих пор не могу получить возвращаемые сервером данные........



Страницы: 1 вся ветка

Форум: "Сети";
Текущий архив: 2007.07.29;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.51 MB
Время: 0.041 c
15-1183170285
Ино
2007-06-30 06:24
2007.07.29
Что означает такая запись? Зачем она используется?


6-1161766282
Denizzz
2006-10-25 12:51
2007.07.29
ServerSocket, ClientSocket и "выдергивание шланга из сетевухи"


2-1183363164
Ksion_tm
2007-07-02 11:59
2007.07.29
Скорость шпинделя CDROMa


15-1183523848
шпыён
2007-07-04 08:37
2007.07.29
Вопрос к тем кто в Америке, Зап. Европе и пр.


15-1183099714
hgd
2007-06-29 10:48
2007.07.29
Алгоритм Magic wand





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский