2012-01-08 10 views
0

Windows XPマシン上で動作するVB6アプリケーションを、SSH経由でLinuxマシン(Redhat 5.3)で実行するにはどうすればよいですか?VB6 + VB6アプリケーションからLinuxマシンのスクリプトをexeする方法

VBアプリケーションは、次の引数

  1. のLinuxログイン
  2. 、Linuxのパスワード
  3. スクリプトのパス

を取るそして、SSH経由でスクリプトのパスを実行する必要があります。例えば

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

VB6は、Linuxマシン上でスクリプト/var/tmp/task.plを実行します。

+0

@BNLこんにちは、私はVB6を学ぶために始めるが、私は今までどのようにLinuxマシン上でVB 6を実行しているLinuxの –

+0

にVB6からスクリプトを実行する方法を説明どんな例が見つかりませんか? –

+0

@Cody Grey - いいえ、私はWin XPでVB6を実行したい、そしてvb6はスクリプトを実行するためにLinuxマシンにsshを実行する –

答えて

0

"シェル"機能を使用してコマンドウィンドウを作成してから、 "sendKeys"機能を使ってsshコマンドとパラメータを送信することができます。ただし、これはエラーが発生しやすいソリューションになります。

もっと恒久的な修正が必要な場合は、this VB Library for SSH manipulationをご覧ください。あなたはそれを使うかもしれません。ここにa sample projectへのリンクがあります。

EDIT:

私はので、私は、私が以前に作成したVBScriptファイルを再利用しVB6のIDEを持っていません。これはそのまま実行することも、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) 
+0

こんにちは、WIN XPシェルからLinux上でスクリプトを実行するシェルコマンドの例を教えてください –

+0

"シェル"関数を使ってコマンドプロンプトウィンドウを作成し、 "sendkeys"コマンドでSSHセッションを開くことができます。関数。ここにそれが使用を示すSOの投稿があります:http://stackoverflow.com/questions/290899/how-do-i-call-a-windows-shell-command-using-vb6しかし、私は第二の提案を見てみることをお勧めします。 "シェル"と "sendkeys"に基づく解決策は、非常に信頼性が低い可能性があります。 – Abbas

+0

私は自分の答えを更新しました。 – Abbas

関連する問題