0

私は現在、リモートにある Windows マシンのコマンド (コマンド プロンプトから) を実行する 1 つの Java アプリケーションの作成に取り組んでいます。

これを開発するために、私は次のことを試しました:

  1. Jsch ライブラリを使用し、Unix マシンに接続するとアプリケーションが正常に動作し、「prstat -a」コマンドを使用してプロセスのリストを取得できましたが、Windows マシンで試してみるとConnectException (Timed out)が発生しました。

    private final static String HOSTNAME = "SOMECOMPUTERNAME.XXX.XXX.XXX.COM";//
    private final static String USERNAME = "SOMEUSERNAME";
    private final static String PASSWORD = "SOMEPASSWORD";
    private final static int PORT = 22;
    
    public static void main(String[] args) {
        JSch jscc = new JSch();
        try {
            Session session = jscc.getSession(USERNAME, HOSTNAME, PORT);
            session.setPassword(PASSWORD);
            Properties localProperties = new Properties();
            localProperties.put("StrictHostKeyChecking", "no");
            session.setConfig(localProperties);
    
            session.connect(60000);
            System.out.println("Session connected");
    
        } catch (JSchException e) {
            e.printStackTrace();
        }
    }
    

ターゲット マシン情報:

  • Windows x64 ワークステーション
  • 最新バージョンの Java がインストールされている
  • 暗号化を使用しません

これをガイドしてください.Jschライブラリで実行できますか.そうでない場合は、どの方法をお勧めしますか.

次のことを想定できます。

  • ターゲット マシンにコードは必要ありません。したがって、私のワークステーションに常駐し、ターゲット ウィンドウ マシンで dir や start applicationName などのいくつかの単純なウィンドウ コマンドを実行するだけの Java アプリケーション
  • ユーザー名と対応するパスワードを持っています
  • IPアドレスはありません。上記のコードに示されている形式の完全なコンピューター名(HOSTNAME)です。

どんな提案も歓迎します。

よろしく、

icr

4

1 に答える 1

0

Windows にはデフォルトで SSH がインストールされていません。Windows 用の SSH クライアントが必要です。

私は OpenSSH を好みます....無料で完璧に動作します

于 2013-11-26T19:54:53.540 に答える