Я пытаюсь установить службу с помощью InstallUtil.exe, но вызывается через Process.Start
. Вот код:
ProcessStartInfo startInfo = new ProcessStartInfo (m_strInstallUtil, strExePath);
System.Diagnostics.Process.Start (startInfo);
где m_strInstallUtil
- полный путь и исполняемый файл «InstallUtil.exe», а strExePath
также полный путь / имя моей службы.
Запуск синтаксиса командной строки из командной строки с повышенными правами работает; Запуск из моего приложения (с использованием вышеуказанного кода) не. Я предполагаю, что имею дело с какой-то проблемой повышения прав, так как мне запустить мой процесс с повышенными правами? Нужно ли смотреть на ShellExecute
это?
Это все в Windows Vista. Я запускаю процесс в отладчике VS2008 с повышенными правами администратора.
Я также попытался установить, startInfo.Verb = "runas";
но это, похоже, не решило проблему.
startInfo.UseShellExecute = true;
в дополнение кstartInfo.Verb = "runas";
этому работал нормально для меня.