The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Telnet. Проблема с выводом потока "
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [ Отслеживать ]

"Telnet. Проблема с выводом потока "  
Сообщение от Blacky email(ok) on 31-Янв-08, 16:04 
  Есть такая проблемка, связанная с telnet(будь-то bsdtelnet/plink etc), что не получается считать информацию со всего выходного потока.
  Если поток считывать посимвольно, то после прохождения последнего символа telnet не подаёт больше признаков жизни..
  Скрипт выполняется в winXP2SP.  

Если кто сталкивался с этой проблемой - отпишитесь пжалста.

  var WshShell = new ActiveXObject("WScript.Shell");
  var cmd = WshShell.Exec("bsdtelnet.exe");    
  //var cmd = WshShell.Exec("c:\\exec\\plinkdos\\plink.exe  -raw -P 23 localhost");
  
  cmd.StdIn.WriteLine("set tracefile ggg.txt");
  cmd.StdIn.WriteLine("open localhost 23");  
  cmd.StdOut.ReadALL(); // после этого шага телнет виснет


Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Telnet. Проблема с выводом потока "  
Сообщение от NuINu (??) on 31-Янв-08, 16:28 
>  cmd.StdOut.ReadALL(); // после этого шага телнет виснет

Телнет никуда не виснет! твоя функция, просто ждет признака окончания потока, или файла, ну короче ждет новых символов, а сервер, выдав login: ждет когда ты что нибудь введешь. Но поскольку твоя программа находиться в аналогичном состоянии, они впадают в клинч.

Используй другую функцию для работы(которая распознает то что читает, и желательно отрубается при таймаутах(клинчах))
и будет тебе счастье.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Telnet. Проблема с выводом потока "  
Сообщение от Blacky email(ok) on 31-Янв-08, 18:14 
>Используй другую функцию для работы(которая распознает то что читает, и желательно отрубается

агась.. пасиб.
Вот именно про признак окончания потока и думаю. Даже, если я изменяю признак окончания строки(bsdtelnet), то считывая посимвольно, достигнув и прочитав последний символ, получается "клинч".

Нашёл программку Expect, надеюсь, разбирусь с ней. http://www.mkssoftware.com/docs/man1/expect.1.asp#SEE_ALSO

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру