0

管理者権限でプロセスを開始し、非表示にする必要があるプログラムを作成していますこれを試しましたが、機能しません

 ProcessStartInfo startInfo = new ProcessStartInfo(Application.StartupPath + "\\launcher.exe");
           startInfo.WindowStyle = ProcessWindowStyle.Hidden;

           startInfo.CreateNoWindow = true;  
           Process.Start(startInfo);
4

2 に答える 2

1
SecureString pass = new SecureString ();
foreach (char c in "yourpassword".ToCharArray())
{
    pass.AppendChar(c);
}    
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.FileName = Application.StartupPath + "\\cmd.exe";
startInfo.WindowStyle = ProcessWindowStyle.Hidden;
startInfo.CreateNoWindow = true;
startInfo.UseShellExecute = false;
startInfo.Domain = "yourdomain"
startInfo.UserName = "yourusername"
startInfo.Password = pass;
Process.Start(Info);

必要に応じて入力してください。

昇格するには、UAC を要求する必要があります。これを行うには、次のいずれかを使用できます。

startInfo.Verb = "runas";

または、マニフェスト ファイルを作成します。プロジェクトを右クリック -> アイテムの追加 -> マニフェスト ファイル

という行を見つけます

<requestedExecutionLevel level="asInvoker" uiAccess="false"/>

これをに変更します

<requestedExecutionLevel level="requireAdministrator" uiAccess="false"/>
于 2012-12-12T12:21:45.563 に答える