0

tasklist を実行する Java コードがあり、すべて正常に動作します。

List<String> command = new ArrayList<String>();
command.add("tasklist");
command.add("/s");
command.add(device);
command.add("/u");
command.add(user);
command.add("/p");
command.add(pass);

ProcessBuilder pb = new ProcessBuilder(command);

Process p;
try {
    p = pb.start();     
    //tasklistResult = 1 when run as a service. 0 when run as jar.
    int tasklistResult= p.waitFor();            
}catch (IOException e) {
    e.printStackTrace();
}

ただし、Java Service Wrapper を使用して jar を Windows サービスに変換すると、リモート コンピューターでタスクリストが機能しなくなります。「エラー: ログオンに失敗しました: 不明なユーザー名またはパスワードが正しくありません」というエラーが表示されます。systeminfo をリモートでも使用すると、同じ問題/エラーが発生します。ユーザー名/パスワードが正しいことを確信しています。

コンピューターにリモート接続しない場合、プログラムはサービスとして機能します。ping はサービスとしても機能します。tasklist と systeminfo をリモートで適切に実行するサービスを取得するにはどうすればよいですか??

4

1 に答える 1

0

サービスを実行するアカウントを現在実行中の管理者アカウントに変更することで修正されました。現在、サービスは適切に実行されていますが、ログインするまでネットワークに到達できないため、コンピューターの起動時にまだ問題が発生しています...

http://wrapper.tanukisoftware.com/doc/english/prop-ntservice-account.html

.conf ファイルで...次を追加/変更します

wrapper.ntservice.account=.\wrapper.ntservice.password=

于 2014-07-17T11:57:24.780 に答える