Установите приложение в окне 7 без UAC, используя C # - PullRequest
0 голосов
/ 20 августа 2010

Когда я устанавливаю свое приложение C # в Windows 7, UAC всегда отображается.Я не вошел в систему как администратор, но я хочу, чтобы мое приложение было установлено без UAC.Можете ли вы дать мне способы, как это сделать?

Ответы [ 4 ]

3 голосов
/ 20 августа 2010

Запрос UAC показывает по любому количеству причин, ни одна из которых не является «кодом внутри exe-функции, вызывающей функцию X или пытающейся записать ее для размещения Y».К ним относятся:

  • имя содержит настройки, исправления, обновления и т. Д. (Например, setup21.exe), и нет манифеста
  • , в который встроен манифест с запросом requireAdministrator.Вы бы сделали это специально в Visual Studio.
  • есть внешний манифест (для NewApp.exe это будет NewApp.exe.manifest) в той же папке, которая запрашивает requireAdministrator.Вы бы сделали это также специально.
  • вы щелкнули правой кнопкой мыши по файлу exe, и в свойствах совместимости, которые вы выбрали, чтобы повысить его, или запустить как XPSP2, который для 7 также повышает
  • кто-то в вашей компании применил групповую политику, что это установочное приложение должно запускаться с повышенными правами (маловероятно)
  • вы однажды запустили его, получили диалоговое окно из Windows, в котором говорилось «что-то не сработало» и согласились попробовать еще разс "рекомендуемыми настройками"

Возможно ли что-нибудь из этого?Если это так, исправьте их и посмотрите, исчезнет ли приглашение UAC.

2 голосов
/ 20 августа 2010

Если вы хотите установить приложение без UAC, то вы можете касаться только тех папок, в которые может войти зарегистрированный пользователь. Google Chrome делает это - он устанавливает все приложение в локальную папку данных приложения пользователя.

Это очень нестандартно, и я бы сказал, что MS должна запретить запуск кода из этого места, но это рабочее решение, требующее доступа администратора / UAC для установки приложений.

Кстати, недавно Google Chrome сделал доступным традиционный установщик, чтобы один пользователь мог установить его для всех пользователей компьютера.

2 голосов
/ 20 августа 2010

Если вы хотите, чтобы ваше приложение было установлено без запуска UAC, установите в% APPDATA% (вместо установки в% ProgramFiles%) и запишите в реестр HKCU только в реестре (т.е. нене пытайтесь писать в HKLM, HKCR и т. д.)

2 голосов
/ 20 августа 2010

Авторский пакет текст ссылки

Вы захотите использовать Установщик Windows / Установщик Windows XML , чтобы эта установка работала так, как вы запрашиваете.

...