2012-02-01 117 views
5

PsExecを使用してGUIアプリケーションをリモートで起動しようとしています。PsExecを使用してGUIアプリケーションをリモート実行

  ProcessStartInfo info = new ProcessStartInfo(@"<path to dir>"); 
      info.FileName = @"C:\<dirpath>\PsExec.exe"; 
      info.Arguments = @"\\" + "<COmputerName>" + " " + @"""C:\Program Files (x86)\<exepath>\<exename>.exe"""; 
      info.RedirectStandardOutput = true; 
      info.UseShellExecute = false; 
      info.RedirectStandardError = true; 
      info.WindowStyle = ProcessWindowStyle.Maximized; 

      Process o = Process.Start(info); 

ここでの問題は、プロセスがリモートで起動することですが、GUIが表示されないことです。私はタスクマネージャーでしか見ることができません。 GUIをリモートコンピュータに表示する方法はありますか?

EDIT 1: * 権限 *

  1. Console.WriteLineを(System.Environment.UserName.ToString())。
  2. Console.WriteLine(Thread.CurrentPrincipal.Identity.Name.ToString());
  3. Console.WriteLine( "現在のwinddentity" + System.Security.Principal.WindowsIdentity.GetCurrent()。Name.ToString());

私は、プロセスを開始する前に、コードの行の上に実行した場合、それが与える:

  • 管理者
  • を空白
  • ドメイン名 \管理者
  • と私は上の管理者アカウントで、それを記録していますリモートコンピュータも同様です。私はCMDプロンプトからスイッチ-iを使用しようとすると

    * InteractiveMode * それは与える: プロセスはエラーコード-1073741502で終了しました。 C#を使って実行しようとしている間、何もしません。少なくとも例外はありません!あなたは、対話型モードの-iたい適切な権限を想定すると、EDIT 1.

    +0

    ほとんどのデスクトップの問題対ユーザー。誰がリモートマシンにログオンしていますか?どのアカウント(ユーザー)がリモートアプリを起動していますか? – adelphus

    +0

    @デルファス編集1を参照してください。パーミッションの詳細を追加しました。 – user96403

    答えて

    3

    OF

    END。

    -iそれは、リモート・システム上の指定されたセッションのデスクトップと対話するようにプログラムを実行します。セッションが指定されていない場合は、コンソールセッションで プロセスが実行されます。

    info.Arguments = @"\\" + "<COmputerName>" + " -i " + @"""C:\Program F... 
    
    +0

    EDIT 1を参照してください。インタラクティブモードで実行した結果を追加しました。ありがとうございます。 – user96403

    +0

    ホストセッションに関連する-xスイッチと-sスイッチがあります。 –

    関連する問題