Раньше что-то не обращал внимания, а сегодня задумался. Знаете, когда пользователь через explorer.exe пытается положить файлы в условный Program Files, то вылезает окно, мол действительно ли ты, пользователь, хочешь сделать то, что пытаешься сделать. Но окно это процесса explorer.exe и нет характерного затемнения фона, как у аналогичного окна UAC. Внимание вопрос: что делает это окно (как-то элевирует поток или что?), если известно, что из контекста процесса explorer.exe записать что-то в Program Files на тупую не выходит. Не нагуглил информации по этому поводу, подумал, что, может, кто-то из местных спецов знает?
Если UAC на максимум то показывает, как минимум в 10. Копируются файлы через IFileOperation (CLSID_FileOperation {3AD05575-8857-4850-9277-11B85BDB8E09}) --- Сообщение объединено, 4 май 2023 --- Код (Text): CoGetObject("Elevation:Administrator!new:{3ad05575-8857-4850-9277-11b85bdb8e09}")
Есть набор модулей и операций, к которым UAC при дефолтных настройках (при максимальных как отметил Thetrik, окно все равно будет) применяется без спец окна: установка инф, оснастки, экранная клавиатура и т.п. Есть ряд требований к этим операциям: подписанный модуль, расположение в директории Windows и так далее.
Окей, спасибо, ребятки, стало понятно. Но "для потомков" резюмирую, если вдруг это кому понадобится. Эксплорер использует IFileOperation, а это - интерфейс со свойством "Auto-Elevate" (в реестре прописан ключ Elevation\Enabled в 1), то есть может запускаться с правами админа без УАК Промпта при определенных условиях. Пример того, как этот интерфейс используется для обхода УАКа само собой уже есть в исходниках УАКМЕ на гитхабе.