Windows 10 不允许我删除目录属性中的只读复选框

Windows 10 不允许我删除目录属性中的只读复选框

Windows 10 不允许我删除目录属性中的只读复选框。

大家好;我正在学习编程,遇到了一个与操作系统有关而与编程无关的问题,只是为了将它们放在上下文中:

使用 symfony v5.3 在 php 中编程;需要能够对特定文件夹赋予写权限...

相关目录为:C:\xampp\htdocs\dev\p1\paguelofacil/var/cache/dev

该目录存在;您有必要的用户,并且这些用户具有读写权限;问题是,无论我如何尝试更改只读复选框,它仍然存在...

我已经尝试了这篇文章中提到的所有内容,但还是没有找到解决方案;甚至我没有收到任何错误...并且在文章中我确实提到了是否存在错误...

Windows 10 无法删除文件夹的只读属性

如果没有结果,甚至运行以下命令......

attrib -r C:\xampp\htdocs\dev\p1\paguelofacil\var\*.* /s

如果需要更多信息,请随时提出请求。

在此处输入图片描述

在此处输入图片描述

在此处输入图片描述

更新:

为了排除这是用户权限问题或者是 php 脚本问题,我做了以下操作:

  1. 我已经放置了一个补丁(PHP),在其中纠正了目录中的写权限:
    echo 'Directory Exist '. $dir .'<br>';
    echo get_current_user().'<br>';
    echo substr(sprintf('%o', fileperms($dir)), -4).'<br>';
    chmod ($dir, 755);

输出:

在此处输入图片描述

这样做的结果是:用糟糕的方式解决问题……

如果用户没有必要的权限;PHP 会抛出一个致命错误!修补此补丁后,错误被消除了,但这并不是正确的事。

这是不正确的,因为我不应该从我的代码中更改权限......假定权限必须位于目录的属性和特性上。

如果我删除补丁,则错误将再次出现;这告诉我,无论我放置属性还是权限都无关紧要;这都丢失了......


让我们澄清以下几点:为了在目录中创建文件(任何格式),我们程序员必须验证在该目录中我们可以写入...在 Linux 中,目录必须至少具有 755 权限;所以我问你在哪里可以对 Windows 做类似的事情?

当我们验证目录时,is_writable如果目录具有权限,0555它将返回 false(您无法写入此目录);此权限是通用的;它与任何用户无关;在 Linux 中,也会验证用户/组是否是目录的所有者...但我已经在 Windows 中建立了这一点,假定通过授予权限每个人,我授予所有用户访问权限……

在此处输入图片描述

在此处输入图片描述

在此处输入图片描述

答案1

该复选框不是状态指示器,而是三态开关。单击OK或按钮时将应用选择状态Apply

这三个州是:

  • 已检查:设置ReadOnly文件夹内所有文件的属性
  • 已清除:清除ReadOnly文件夹内所有文件的属性
  • 灰色方块:不采取任何行动(对话框显示时的默认设置)

这只是非常糟糕的用户界面设计,因为Hidden复选框两个都开关和状态指示灯。

确定ReadOnly文件夹属性状态的唯一准确方法是将Attributes列添加Details文件管理器

在此处输入图片描述

请注意,该属性不会影响文件夹或其内容的读/写权限。对于目录,它充当一个标志,告诉 Windows 处理文件夹的desktop.ini文件(自定义文件夹图标、本地化显示名称和其他自定义行为)。



通过从对话框选项卡Advanced访问的对话框检查文件夹的有效权限:SecurityProperties

在此处输入图片描述

选择Effective Access选项卡,然后选择用户:

在此处输入图片描述

然后选择View effective access

在此处输入图片描述

相关内容