5

Как Windows 7 знает, как добавить щит UAC в некоторые ярлыки? Раньше я говорил программе запускаться от имени администратора. Но теперь у того же ярлыка есть желто-синий значок щита UAC.

Как узнать, как запустить мою программу от имени администратора? Есть ли какой-нибудь ключ реестра?

альтернативный текст

2 ответа2

4

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

Известные способы:

  1. Он знает, потому что вы изменяете ярлык, или свойства совместимости приложения, или
  2. потому что приложение предупредило ОС, что оно требует привилегий администратора.

Что вы, вероятно, видите ... В диалоговом окне свойств ярлыка «Дополнительно ...» при выборе "Запуск от имени администратора" появится оболочка (после обновления кеша значков). То же самое с настройкой "Запуск от имени администратора" на вкладке совместимости. (опять же, после обновления кэша значков.) Вы спрашиваете, как принудительно обновить кэш иконок в Windows 7? Я не уверен ... перезагрузка должна сделать это.)

Windows может также знать, что сначала нужно поместить значок UAC, потому что приложение, которое "готово" (запрограммировано работать с UAC), может дать ОС знать, что ей нужны разрешения администратора, это можно сделать с помощью « манифест ", который встраивается в exe.

1

Как уже упоминалось в DanO, существует несколько способов отображения значка щита UAC. Некоторые, которые я знаю наверняка:

  • Если приложение поддерживает UAC, разработчик может добавить этот значок вручную, но значок всегда будет одним и тем же.
  • Если приложение поддерживает UAC, разработчик может поместить флаг повышения прав пользователя в манифест приложения. В этом случае значок щита появится автоматически, когда требуется повышение прав пользователя.
  • Даже если приложение не поддерживает UAC, повышение прав пользователя может быть инициировано на основе имени исполняемого файла. Имя файла должно содержать слово "setup", "install" или "update".

https://technet.microsoft.com/en-us/library/995ed48f-81d0-41f1-94fd-c77fdea4f39a

https://stackoverflow.com/questions/4133337/how-do-i-avoid-uac-when-my-exe-file-name-contains-the-word-update

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .