VB6 + как выполнить скрипт на Linux-машине из приложения VB6 - PullRequest
0 голосов
/ 08 января 2012

Как может приложение VB6, работающее на компьютере с Windows XP, запускать сценарий на компьютере с Linux (Redhat 5.3) через SSH?

Приложение VB должно принимать следующие аргументы

  1. Linux login
  2. пароль для Linux
  3. Путь к сценарию

А затем запустите путь сценария через SSH.

Например

ARG1 Login –        root
ARG2 Password –     USA123
ARG3 Script path -  /var/tmp/task.pl 

VB6 запустит скрипт /var/tmp/task.pl на компьютере с Linux.

1 Ответ

0 голосов
/ 08 января 2012

Вы можете попробовать использовать функцию «shell» для создания командных окон, а затем отправлять ssh команды и параметры в него через функцию «sendKeys».Тем не менее, это будет решение, подверженное ошибкам.

Если вы хотите более постоянное исправление, взгляните на эту библиотеку VB для манипулирования SSH .Вы можете найти это полезным.Вот ссылка на пример проекта .

РЕДАКТИРОВАТЬ:

У меня нет VB6 IDE, поэтому я повторно использовал файл VBScript Iсоздал ранее.Он может быть запущен как есть или может быть легко преобразован в код VB6.

Set objShell = WScript.CreateObject("WScript.Shell")
objShell.Run "C:\Windows\System32\telnet.exe"
WScript.Sleep(1000)
objShell.SendKeys "o telnet.example.com"
WScript.Sleep(1000)
objShell.SendKeys "{enter}"
WScript.Sleep(10000)
objShell.SendKeys "user"
WScript.Sleep(2000)
objShell.SendKeys "{enter}"
WScript.Sleep(1000)
objShell.SendKeys "pass"
WScript.Sleep(2000)
objShell.SendKeys "{enter}"
WScript.Sleep(1000)
objShell.SendKeys "./var/tmp/task.pl"
WScript.Sleep(1000)
objShell.SendKeys "{enter}"
WScript.Sleep(1000)
...