5

(Windows 7では)runasコマンドを使用してサービスを停止してから再起動しようとしています。(Win7では、これを行うために管理者権限が必要です。したがって、ルーン文字を使用します。)

サービスの停止は正常に機能しますが、開始は機能しません。サービスを停止するために使用しているコマンドは次のとおりです。

runas /user:myDomain\myUserId "net stop serviceName"

サービスを開始するためのコマンドは次のとおりです。

runas /user:myDomain\myUserId "net start serviceName"

上記のコマンドを実行すると、別のコマンドウィンドウが開きますが、何も表示されないうちに点滅します。したがって、何が問題になっているのかわかりません。

したがって、私の質問は、runasを介して実行するときに、net startコマンドからstdoutやstderrをキャプチャするにはどうすればよいですか?リダイレクトを使用してみましたが、空のファイルを取得しました。別の解決策は、サブタスクを開いたままにするために、runasによってウィンドウを開くことです。

前もって感謝します。

4

2 に答える 2

10

代わりに、実行するコマンドを使用してcmd.exeを起動し、出力をファイルに書き込むように指定します。

runas / user:myDomain \ myUserId "cmd.exe / c net stop serviceName> output.txt"

ネットストップからのエラー出力には2>を使用できます。

于 2009-09-22T21:16:18.193 に答える
5

また、出力ファイルに煩わされたくない場合は、/c の代わりに cmd.exe /k を使用してコマンドを起動すると、セッション ウィンドウが開いたままになります。ちょっと覗き見したいだけなら、もっと簡単/速いかもしれません。

于 2013-04-17T15:05:48.607 に答える