InstallUtil.exeを使用してサービスをインストールしようとしていますが、を介して呼び出されますProcess.Start
。コードは次のとおりです。
ProcessStartInfo startInfo = new ProcessStartInfo (m_strInstallUtil, strExePath);
System.Diagnostics.Process.Start (startInfo);
ここm_strInstallUtil
で、は「InstallUtil.exe」への完全修飾パスとexeであり、strExePath
は私のサービスへの完全修飾パス/名前です。
管理者特権のコマンドプロンプトからコマンドライン構文を実行すると機能します。私のアプリから実行すると(上記のコードを使用して)、実行されません。プロセスの昇格の問題を扱っていると思いますが、プロセスを昇格した状態で実行するにはどうすればよいですか?これを調べる必要がありますShellExecute
か?
これはすべてWindowsVista上にあります。管理者権限に昇格したVS2008デバッガーでプロセスを実行しています。
設定もしてみstartInfo.Verb = "runas";
ましたが、うまくいかなかったようです。