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

Вниз

захват выводв SSH2   Найти похожие ветки 

 
uniken1 ©   (2011-06-07 13:51) [0]

Как захватить вывод SSH?

Пробовал установить SSHWinClient-3.1.0-build235 затем пытаюсь захватить вывод с программы ssh2.exe с помощью такой процедуры http://demi-s.narod.ru/winapi/027.html. Только с небольшими исправлениями, чтобы под D2010 работало(стандартные виндовые консольные команды захватывает нормально).
На выводе получаю
C:\Program Files\SSH Communications Security\SSH Secure Shell\ssh2.exe: FATAL: C:\ssh_3_1_0_release\cmdline\m-ssh2\lib\sshutil\sshsysutil\win32\sshwinstdiostream.c:230 SshStdioStream (function name unavailable) Assertion failed: sdata->hstdin != ((void *)0)

Пытаюсь выполнить ssh2.exe -l root ipaddress "df -h" >c:\1.txt, в командной строке работает, а через WinExec пусто, файл просто не появляется.

Может подскажите как сделать чтобы эти варианты работали или альтернативные что бы работал захват вывода ssh?


 
uniken1 ©   (2011-06-08 09:04) [1]

Нашел еще пару проектов. Через Synapse, описание брал(http://leonardorame.blogspot.com/2010/01/synapse-based-ssh-client.html)
Как и у некоторых отписавшихся в комментариях не работает с надписью "Can"t connect".

Скачал из проекта cygwin файлы
cygcrypto-0.9.8.dll
cyggcc_s-1.dll
cygssp-0.dll
cygwin1.dll
cygz.dll
ssh.exe
В командной строке опять все работает, а при попытке захвата вывода, вылетает:
Pseudo-terminal will not be allocated because stdin is not a terminal.

С SSH никто не работал в Delphi? Вроде штука не особо уникальная...
Может функцию захвата надо как-то иначереализовывать?


 
tesseract ©   (2011-06-08 13:42) [2]


> Пытаюсь выполнить ssh2.exe -l root ipaddress "df -h" >c:
> \1.txt, в командной строке работает,


Так ты вывод в файл перенаправляешь. Он весь вывод туда и высылает.

В [0] у тебя судя по всему ssh2.exe запускается со сбитой домашней директорией и не может найти свои библиотеки.


> Pseudo-terminal will not be allocated because stdin is not
> a terminal.


Логично.
Про перехват stdin/stdout тут есть : http://www.delphisources.ru/pages/faq/base/stdin_stdout.html


 
uniken1 ©   (2011-06-08 14:54) [3]

А нет ли у Вас примера, который указан в статье? ссылки внизу не работают.



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

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

Наверх





Память: 0.45 MB
Время: 0.004 c
15-1306179935
DmitriyG.
2011-05-23 23:45
2011.09.25
Возврат интерфейса в Builder


15-1307305794
Юрий
2011-06-06 00:29
2011.09.25
С днем рождения ! 6 июня 2011 понедельник


2-1307508494
mefodiy
2011-06-08 08:48
2011.09.25
Запрос с LEFT JOIN в SQL Server


15-1306993071
kuzja52
2011-06-02 09:37
2011.09.25
узнать пароль пока открыт браузер


2-1307467358
Exterr
2011-06-07 21:22
2011.09.25
Создание панели в рабочем столе





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский