6

Я получаю это сообщение, когда пытаюсь запустить приложение Modern UI после перезапуска проводника с правами администратора (программой установки).

Я знаю, как это исправить (просто перезапустите проводник без прав администратора), но мне любопытно: почему запрещено запускать приложение метро с проводником, работающим с правами администратора? Я не могу придумать ни одной веской причины.

1 ответ1

5

Я сам столкнулся с этой ошибкой некоторое время назад и немного изучил ее, и вот что я понял о причине. Если какой-либо специалист по программированию Windows видит какие-либо вопиющие ошибки, пожалуйста, отредактируйте и улучшите его.

Windows 8 и внедрение нового Metro/Modern UI и приложений потребовали нескольких улучшений в модели безопасности ОС. AppContainer - это новый метод изоляции, применяемый к приложениям Metro, который по умолчанию предотвращает их чтение и запись в большинстве операционных систем, за исключением собственной папки AppData приложения.

Приложения Metro могут делать декларации в своем файле манифеста приложения о том, к каким возможностям ОС они должны получить доступ. Вы можете прочитать об этом подробнее в статье « Предоставление надежных и заслуживающих доверия приложений в стиле Metro» в блоге Building Windows 8 .

AppContainer реализован через новый уровень целостности в Windows 8, поддерживаемый некоторыми дополнительными изменениями в ОС. Уровень целостности AppContainer блокирует доступ на чтение и запись к объектам, отмеченным с более высоким уровнем целостности. Теперь Windows Explorer обычно работает в режиме средней целостности, а explorer.exe является родительским процессом, от которого все другие инициированные пользователем процессы наследуют свой токен доступа. Если проводник работает с правами администратора, то есть с высоким уровнем целостности, то любые приложения Metro, которые он запускает, наследуют этот токен административного доступа, который, очевидно, строго запрещен, поскольку он нарушает изолированную среду, обеспечиваемую уровнем целостности AppContainer. Отсюда выдается сообщение об ошибке.

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