Почему именно Process.Start () у вас не работает?В отсутствие этих знаний я могу описать только ситуацию, с которой я столкнулся при попытке запустить установщик .NET.
Если появляется диалоговое окно UAC , запрашивающее права администратора,нет способа избежать требования вашего пользователя, чтобы нажать на него.Любой процесс установки без повышенных прав, в том числе профессиональное стороннее решение, сталкивается с диалоговым окном UAC при попытке запустить установщик .NET.Это связано с тем, что для установки .NET требуется маркер администратора с повышенными правами.Вы не можете обойти это.
Я столкнулся с фоновым диалогом UAC .Он будет тихо мигать и будет игнорироваться пользователями, которые, вероятно, думают, что установщик завис, и полностью отказались от него.Я просто провел 2 недели, работая над этим вопросом.Это произошло только в том случае, если пользователь щелкнул за пределами окна установщика между запуском установщика и появлением диалогового окна UAC.Это заставляет Windows думать, что пользователь хочет работать над чем-то другим, и сохраняет окно, в котором он щелкнул, активным.Windows спроектирована так, чтобы запретить «кражу фокуса», поэтому нет никаких официальных способов «вернуть себе» фокус для вашего окна (т. Е. Для диалога UAC, в котором запущен ваш процесс).
Можно с уверенностью предположить, чтоОкно, на которое щелкают пользователи, не принадлежит вам, поэтому официальные методы Windows (при этом окно с фокусом дает разрешение вашему процессу захватить фокус) не будут работать в этой ситуации.Вот где было бы неплохо, если бы msiexec.exe мог поддерживать свои окна на верхнем уровне.
Так что на данный момент, если вы столкнулись с тем, с чем я столкнулся, то не существует простого и Microsoftподдерживаемые решения, о которых я знаю.
Но, возможно, вы сталкиваетесь с чем-то другим?Опять же, пожалуйста, обновите ваш вопрос с более подробной информацией, чтобы мы могли дать вам лучший ответ.
Изменение IDE для установки , как предложил другой пользователь, независимо от того, насколько хороша целевая IDE, это большаяшаг.И поскольку я не могу рекомендовать использовать Visual Studio для разработки файлов MSI, я бы подумал о переходе на другую IDE, только если вы продолжите сталкиваться с проблемами при выполнении того, что вы хотите достичь.Однако до сих пор вы описали только локализованную проблему, которую нужно решить, и ту, которая не может быть решена с помощью другого инструмента.