Нужен весь список защищенных ресурсов UAC для запуска моего приложения в качестве обычного пользователя (без изменений)
Что касается обновления моего приложения VB6 для работы в качестве обычного пользователя, а не для того, чтобы всегда требовать повышенных привилегий, мне трудно понять все биты старого приложения VB6 (exe), которые мне нужно изменить.
На данный момент я понимаю, что такое "Защищенный ресурс" в отношении UAC:
В Реестре вы не можете получить доступ к HK_LocalMachine (Локальный компьютер) и должны вместо этого использовать HK_CurrentUser, потому что HK LocalMachine требует повышенных привилегий, а CurrentUser - нет.
В разделе "Файлы и папки" я знаю, что не могу получить доступ к каталогу Windows (C:\Windows) или любым его подпапкам, потому что это, в том числе каталог программных файлов (C:\Program Files), является защищенным ресурсом и требует высота, поэтому вместо этого мы должны использовать папку ProgramData, которая не требует повышения.
Кроме того, я думаю, что некоторые программы требуют повышения прав, если вы хотите их запустить, например, Event Viewer? Есть ли список всех программ, которые требуют повышения для запуска где-нибудь? Как насчет программ, которые запускаются внутри консоли cmd.exe?
Теперь я даже не уверен, правильно ли я использую термин "Защищенный ресурс", потому что, когда я выполнял несколько разных типов поиска в Google, я не мог найти другие Защищенные ресурсы, о которых я не знаю. По сути, мне нужно знать, что представляют собой все другие "Защищенные ресурсы", чтобы я знал, какие части моего приложения VB6 необходимо изменить, чтобы я мог ответственно запускать свое приложение на компьютерах пользователей (не требуя повышения прав).
Поскольку я не смог найти Список всех Защищенных ресурсов, ограниченных UAC в Vista и выше, я не знаю, какие части моего VB6 EXE нужно изменить. Это в основном моя проблема. На данный момент единственное, что мне нужно изменить, - это перечисленные выше элементы: в реестре использовать CurrentUser вместо LocalMachine, а в файловой системе - ProgramData вместо%WinDir% и%ProgramFiles%. Что такое все черные каталоги?
По сути, поиск в Списке всех защищенных ресурсов ничего не дал в Google, может кто-нибудь направить меня на какой-нибудь сайт, где я могу получить полный список всех элементов, для работы которых требуется повышение? Чтобы таким образом я мог использовать альтернативный метод при перекодировании моего VB6 EXE, чтобы люди могли запускать мое приложение без предоставления ему Административных привилегий?
Кроме того, любые различия в этих "Защищенных ресурсах" между Vista, Windows 7 и Windows 8/8.1 по мере необходимости или по вашему усмотрению, чем больше я знаю, тем лучше.
Кроме того, я не могу повторно протестировать каждую отдельную часть приложения, чтобы увидеть, перестает ли оно работать или нет, так как приложение содержит слишком много разных частей и имеет 20000 строк кода. Мне нужен документ, в котором это правильно изложено, чтобы я мог пойти туда и изменить то, что нужно изменить, вместо того, чтобы пытаться сделать метод проб и ошибок.
Спасибо вам большое!
Обновление / Изменить / Резюме:
Вот вещи, которые я бы нашел полезными. Мне известны четыре (4) категории, которые содержат Защищенные ресурсы, это: Реестр, Папки файловой системы, Приложения, установленные с Windows и Windows API.
1). Если есть другая категория или категории, которые могут содержать защищенные ресурсы, пожалуйста, не стесняйтесь перечислять их. 2). Список ключей реестра, которые являются защищенными объектами реестра и для доступа к которым требуется повышение прав. 3). Список папок, которые являются защищенными папками и которым для доступа требуется высота. 4). Список приложений Windows, которые являются защищенными приложениями и для запуска которых требуется повышение прав. 5). Список API-интерфейсов Windows, которые являются Защищенными API-интерфейсами и требуют повышения прав для использования.
1 ответ
Когда ваше приложение работает в обычной среде LUA, вы обычно имеете полный доступ только к профилю этого пользователя. Это включает:
- Их папка профиля:
C:\Users\[username]\
- Их реестр улей:
HKEY_CURRENT_USER
Таким образом, любые настройки или изменения, применимые только к этому пользователю, могут быть выполнены без повышения прав.
Все, что находится за пределами этого, либо не имеет доступа, либо доступно только для чтения, включая (но не ограничиваясь):
- Глобальные настройки
- Системный реестр кустов:
HKEY_LOCAL_MACHINE
- Системные папки:
C:\Windows\
,C:\Program Files\
,C:\ProgramData\
(если явно не разрешено) - Профили других пользователей
- Доступ к аппаратному обеспечению
- Собака по соседству
- Коды запуска ядерных ракет
Дальнейшее чтение: