在 C:\Program Files\WindowsApps 中编辑/创建文件

Jos*_*ley 16 windows permissions windows-10-preview

最近,我对无法编辑 C:\Program Files\WindowsApps 文件夹中的文件感到非常恼火。我在提升的 CMD 中使用了删除命令,并更改了权限,以允许管理员拥有完全控制权(我是管理员),并将所有者更改为管理员。我可以删除文件/文件夹,但是,每当我尝试编辑文件或添加文件时,我都会收到错误消息“访问被拒绝”。如何在 WindowsApps 中启用创建文件和编辑文件?

har*_*ymc 14

WindowsApps文件夹是 Windows 10 中受保护最严格的文件夹之一。它包含所有 Windows UWP 应用程序,Microsoft 积极保护其访问权限。此文件夹的保护可能会因 Windows 版本而异。

对于此文件夹,获取所有权和分配权限的常用方法是不够的,但仍需要作为获得访问权限的第一步。执行它们后,现在可以访问文件夹进行复制,但仍然阻止编辑。要编辑,需要将文件保存在别处,然后才用编辑后的版本替换原始文件。

还要注意的是TrustedInstaller ,通过使用以下命令,可以在不丢失分配的额外权限的情况下恢复文件夹的所有权:

icacls "%ProgramFiles%\WindowsApps" /setowner "NT Service\TrustedInstaller" /t
Run Code Online (Sandbox Code Playgroud)

如果有人希望使用提升的命令提示符来访问文件夹,那么这些命令是:

    takeown /F "%ProgramFiles%\WindowsApps"
    takeown /F "%ProgramFiles%\WindowsApps" /r /d y
    icacls "%ProgramFiles%\WindowsApps" /grant Administrators:F
    icacls "%ProgramFiles%\WindowsApps" /grant Administrators:F /t
Run Code Online (Sandbox Code Playgroud)

我还注意到,在更改权限之前和之后使用以下命令可以避免权限问题,以完全恢复原始权限:

icacls "%ProgramFiles%\WindowsApps" /save WindowsApps.acl
icacls "%ProgramFiles%" /restore WindowsApps.acl
Run Code Online (Sandbox Code Playgroud)

为了补充发布者关于恢复文件夹的原始权限而在开始之前没有保存这些权限的评论,这是通过在提升的命令提示符 (cmd) 中输入命令来完成的:

icacls "%ProgramFiles%\WindowsApps" /q /c /t /reset
Run Code Online (Sandbox Code Playgroud)

如果该命令不起作用,则需要从 Windows 启动 CD/USB 重做,如重置 C:\Program Files\WindowsApps 的默认 ACL 一文中所述 :

  1. 按照此页面上的说明创建 Windows 安装介质
  2. 从 USB/CD 启动,到达安装按钮后单击“修复我的计算机”
  3. 选择疑难解答,然后命令提示符
  4. 您当前的驱动器C:将是启动媒体,您的 Windows 系统磁盘可能在 中D:,因此请验证使用dir D:,如果不是,则搜索正确的驱动器号
  5. 使用您刚刚找到的驱动器号(也许D:\),发出命令:

    icacls "D:\Program Files\WindowsApps" /q /c /t /reset
    
    Run Code Online (Sandbox Code Playgroud)
  6. 等待操作完成,并检查输出是否有错误

  7. 重启。


Alb*_*bin 1

有一个解决方案:您必须更改文件/文件夹的所有权。在这里您可以看到包括屏幕截图的描述(超级用户也已经有一个副本)。我刚刚在Win10上尝试过可以创建/编辑/删除文件。

\n\n

如果您想撤销所有权变更,您可以在此处找到说明。将其更改回来后,您的用户仍然可以访问该文件夹,删除所有权更改期间所做的所有其他安全更改(例如更改的权限)会将其修复为原始状态。

\n\n

重要提示:在某些情况下,商店(或应用程序)在更改所有权并改回后将无法运行,除非您删除“所有”更改而不仅仅是所有权。因此,请确保创建系统还原点,除非您确切知道自己在做什么!

\n\n
\n\n

这是更改所有权的说明副本:

\n\n
    \n
  1. 在 Windows 资源管理器地址栏中输入C:\\Program Files\\WindowsApps并按 Enter 键。

    \n\n

    输入路径

  2. \n
  3. 震惊和沮丧地观察到系统对话框说您在自己的计算机上不拥有\xe2\x80\x99t 文件夹。点击“继续”。

    \n\n

    被拒绝

  4. \n
  5. 点击“继续”后,您\xe2\x80\x99将遇到以下对话框:

    \n\n

    再次被拒绝

    \n\n

    不要点击“关闭”\xe2\x80\x94,而是点击“安全选项卡”链接。

  6. \n
  7. 在接下来的系统对话框中单击“高级”。

    \n\n

    特性

  8. \n
  9. 单击所有者安全字段中的“更改”链接。

    \n\n

    改变

  10. \n
  11. 将您的 Live ID 或 Windows 8 用户名添加到“选择用户或组”系统对话框中。

    \n\n

    添加用户

  12. \n
  13. 单击“确定”、“确定”和“确定”。

    \n\n

    完毕

  14. \n
\n

  • 这不是问题的答案,因为这不起作用。您似乎认为 WindowsApps 文件夹似乎遵循 ACL,但事实并非如此(完全)。将“Chess Free”下载到例如 D:\,这样您就不会弄乱真正的 WindowsApps 文件夹。按照您的步骤操作,您将无法编辑游戏文件。我只会给一个成功地允许我编辑文件的解决方案。或者甚至只是将它们复制到我自己的桌面上。这个答案对此不起作用。将文件夹从 WindowsApps 复制到桌面将会产生(在未连接到域的单台电脑上)和错误。 (3认同)
  • 我不断收到“访问被拒绝”的消息。 (3认同)
  • 我的帐户对所有对象具有“完全控制”(通过继承) (2认同)