Отключение контроля учетных записей для конкретного приложения в Win 7-10

Недавно столкнулся со следующей проблемой: при выключенном UAC (контроль учетных записей) не работает Win Store и встроенные стандартные приложения Win 10(которые по большому счету не очень то и нужны, но тем не менее хочется полный функционал).

При включении UAC при запуске стороннего приложения (рассмотрим на примере HWMonitor) вылазит следующее окно, вы с ним встречались:

Отключение контроля учетных записей для конкретного приложения в Win 7-10 Инструкция, Реестр, Windows, Инвокер, Uac, Совместимость, Длиннопост

Вроде и вовсе не напрягает? А если пользоваться Total Commander'ом, который открываешь/закрываешь каждые 2 минуты? Можно его не закрывать, а сворачивать. Выход? Да!

(TCmd у меня уже настроен, поэтому пример на HWMonitor) Но тут уже спортивный интерес))

Итак. Такой запрос происходит потому, что некоторые программы не имеют сертификата, удостоверенного в центре сертификации мелкософта. При запуске программы происходит сверка параметров запуска исполняемого файла (.exe).


Для решения всего навсего нам нужно повысить права для программы до INVOKER навсегда, чтобы система считала её своей, родненькой. Прав администратора в винде очень часто бывает недостаточно, чтобы обойти этот нюанс.

Существуют определенные параметры, которые отвечают за тот или иной уровень совместимости (читай доступа) программ: RunAsAdmin, RunAsInvoker, RUNASADMIN WIN7RTM, RUNASADMIN VISTARTM  и множество других.


С Technet: Исправление совместимости RunAsInvoker обеспечивает запуск приложения с помощью маркера, наследуемого от родительского процесса. Исправление RunAsInvoker отменяет как обнаружение установщика, так и обработку манифеста и определяет состояние повышения прав для всего приложения после его применения.


В WIN10, да и во всеми любимой семерке, в которой также используется Windows Registry Editor Version 5.00, существует куст реестра, который содержит в себе слои совместимости программ - Application Compatible Flags/Layers. Располагается он по пути

[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers].

Зная это, мы может добавить нужный нам ключ реестра, необходимый для запуска программы с правами INVOKER, а именно эти права нам и нужны для обхода докучающего сообщения. В нашем случае в общем виде он будет выглядеть так:

"C:\Program Files\CPUID\HWMonitor\HWMonitor.exe"="RUNASINVOKER"


Здесь необходимо создать строковый параметр с именем, совпадающим с путем к исполняемому файлу:

Отключение контроля учетных записей для конкретного приложения в Win 7-10 Инструкция, Реестр, Windows, Инвокер, Uac, Совместимость, Длиннопост
Отключение контроля учетных записей для конкретного приложения в Win 7-10 Инструкция, Реестр, Windows, Инвокер, Uac, Совместимость, Длиннопост
Отключение контроля учетных записей для конкретного приложения в Win 7-10 Инструкция, Реестр, Windows, Инвокер, Uac, Совместимость, Длиннопост

Вписываем значение строкового параметра RunAsInvoker

Отключение контроля учетных записей для конкретного приложения в Win 7-10 Инструкция, Реестр, Windows, Инвокер, Uac, Совместимость, Длиннопост

Жамкаем ОК. Параметр сохранен.


Теперь программа будет запускаться с повышенными правами, запрос UAC выходить не будет.

Для упрощения задачи можно применить следующие действия: Создаем текстовый документ со следующим содержимым:


Windows Registry Editor Version 5.00


[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers]


"C:\\Program Files\\CPUID\\HWMonitor\\HWMonitor.exe"="RUNASINVOKER"


Где  "C:\\Program Files\\CPUID\\HWMonitor\\HWMonitor.exe"  - путь к исполняемому файлу вашей программы, скопированный из свойств ярлыка, но с дублированными  бэкслешами, к примеру.

Отключение контроля учетных записей для конкретного приложения в Win 7-10 Инструкция, Реестр, Windows, Инвокер, Uac, Совместимость, Длиннопост

Сохраняем документ, меняем расширение файла на .reg

Получаем файл ключа реестра. Запускаем, разрешаем слияние. Profit.

Отключение контроля учетных записей для конкретного приложения в Win 7-10 Инструкция, Реестр, Windows, Инвокер, Uac, Совместимость, Длиннопост

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

Извините за сумбурность изложения.

Пример файла: тыц

Надеюсь кому-нибудь поможет))) Похожего не нашел...

Вы смотрите срез комментариев. Показать все
ещё комментарии
Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку