7

В последнее время меня раздражает тот факт, что я не могу редактировать файлы в папке C:\Program Files\WindowsApps. Я использовал команду takedown в CMD с повышенными правами и изменил разрешения, чтобы позволить администраторам получить полный контроль (я являюсь администратором), и сменил владельца на Администраторов. Я могу удалить файлы / папки, но всякий раз, когда я пытаюсь редактировать файлы или добавлять файлы, я получаю сообщение об ошибке «Доступ запрещен». Как включить создание файлов и редактирование файлов в WindowsApps?

3 ответа3

2

Существует решение: вы должны изменить владельца файлов / папок. Здесь вы можете увидеть описание, включая скриншоты (копия уже есть на суперпользователе ). Я только что попробовал на Win10 Создание / редактирование / удаление файлов возможно.

Если вы хотите отменить смену владельца, вы можете найти описание здесь. После того, как вы вернете его обратно, ваш пользователь все равно будет иметь доступ к папке, а удаление всех других изменений безопасности (например, измененных разрешений), которые были сделаны во время изменения владельца, вернет его в исходное состояние.

Важное замечание: В некоторых случаях Магазин (или Приложения) не будут работать после смены владельца и возврата обратно, если только вы не удалите "все", а не только владельца. Поэтому обязательно создайте точку восстановления системы, если вы точно не знаете, что делаете!


Вот копия описания для смены владельца:

  1. Введите C:\Program Files\WindowsApps в адресной строке Windows Explorer и нажмите Enter.

    Введите путь

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

    Отказано

  3. После нажатия "Продолжить" вы увидите следующее диалоговое окно:

    Снова отказано

    Не нажимайте кнопку "Закрыть" - вместо этого нажмите ссылку "вкладка безопасности".

  4. В следующем системном диалоге нажмите "Дополнительно".

    свойства

  5. Нажмите на ссылку "Изменить" в поле безопасности владельца.

    + Изменить

  6. Добавьте свое имя пользователя Live ID или Windows 8 в системное диалоговое окно "Выбор пользователя или группы".

    Добавить пользователя

  7. Нажмите "ОК", "ОК" и "ОК".

    Готово

1

Я все же решил это сам:

Из командной строки администратора следующая команда скопирует папку пакета WindowsApps (или любую папку внутри):

robocopy /B /E /COPY:DAT D:\WindowsApps\xxx D:\MyTargetDir

Это скопирует папку пакета WindowsApps\xxx на D:\ в папку MyTargetDir на D:\ . Это работает, потому что параметр /B указывает Windows использовать токен резервного копирования, который игнорирует любые разрешения или ограничения / политики.

После этого файлы необходимо расшифровать:

cipher /D /S:D:\MyTargetDir

Затем файлы могут быть отредактированы.

Удалить исходную папку (или переименовать ее):

mv D:\WindowsApps\xxx D:\WindowsApps\xxx_

А затем скопируйте обратно отредактированные файлы:

robocopy /B /E /COPY:DAT D:\MyTargetDir D:\WindowsApps\xxx

ОДНАКО: обратите внимание, я до сих пор не выяснил, как запустить отредактированное приложение, поскольку на данный момент Windows Store будет возвращать ошибки для приложений в этих папках, как только будут изменены разрешения. Вернуть их обратно не получится.

0

Папка WindowsApps является одной из наиболее защищенных папок в Windows 10. Он содержит все приложения Windows UWP, к которым Microsoft ревностно охраняет доступ. Защита этой папки может меняться в разных версиях Windows.

Обычные методы получения права собственности и назначения разрешений для этой папки недостаточны, но все же необходимы в качестве первого шага для получения доступа. После их выполнения доступ к папке теперь можно копировать, но редактирование по-прежнему заблокировано. Для редактирования необходимо сохранить файл в другом месте, и только затем заменить оригинал отредактированной версией.

Еще одно замечание: восстановление владения папки в TrustedInstaller возможно без потери дополнительных разрешений, которые были назначены с помощью команды:

icacls "%ProgramFiles%\WindowsApps" /setowner "NT Service\TrustedInstaller"

Если кто-то хочет использовать командную строку с повышенными правами для получения доступа к папке, то это команды:

    takeown /F "%ProgramFiles%\WindowsApps"
    takeown /F "%ProgramFiles%\WindowsApps" /r /d y
    icacls "%ProgramFiles%\WindowsApps" /grant Administrators:F
    icacls "%ProgramFiles%\WindowsApps" /grant Administrators:F /t

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

icacls "%ProgramFiles%\WindowsApps" /save WindowsApps.acl
icacls "%ProgramFiles%" /restore WindowsApps.acl

Чтобы дополнить замечание автора о восстановлении исходных разрешений для папки, не сохранив эти разрешения перед запуском, это можно сделать, введя в командной строке с повышенными правами (cmd) команду:

icacls "%ProgramFiles%\WindowsApps" /q /c /t /reset

Если команда не работает, ее необходимо повторить с загрузочного компакт-диска /USB-диска Windows, как описано в разделе Сброс списков ACL по умолчанию для C:\Program Files\WindowsApps:

  1. Следуйте инструкциям на этой странице, чтобы создать установочный носитель Windows
  2. Загрузитесь с USB/CD, нажмите "Восстановить мой компьютер" при достижении кнопки « Установить»
  3. Выберите Устранение неполадок, затем Командная строка
  4. Ваш текущий диск C: будет загрузочным носителем, а системный диск Windows скорее всего будет в D: поэтому проверьте с помощью dir D: а если нет, то найдите правильную букву диска.
  5. Используя только что найденную букву диска (возможно, D:\), введите команду:

    icacls "D:\Program Files\WindowsApps" /q /c /t /reset
    
  6. Дождитесь завершения операции и проверьте вывод на наличие ошибок

  7. Перезагружать.

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