为什么我可以将文件写入只读文件夹?


39

我在Windows 7和Windows XP上都尝试过此操作。启动Windows资源管理器,并在一个名为(say)的临时位置中创建一个新文件夹NonWriteable。右键单击该文件夹,然后将文件夹的属性设置为Read-only

文件夹设置为只读

现在打开文件夹并创建一个新的.txt文件。这是允许的。为什么?如何设置文件夹,以便其中的任何内容都无法修改?

注意:如果我右键单击.txt文件并将其设置为,Read-only则系统将正确地阻止对该文件的更新。


3
检查高级选项,并主动拒绝写入权限。您使用哪种帐户?管理帐户应始终能够更改内容。
赛斯

@Seth管理帐户应该总是可以更改内容吗?如果尝试访问另一台计算机上的文件夹怎么办?
相通

2
Windows似乎从未对目录使用此设置。如果它在共享驱动器中,您将发现Linux将无法创建,删除或重命名文件,除非清除了只读状态。
AFH 2009年

2
@Seth:好的电话。在修改了Security选项卡上的高级权限以拒绝访问后Create Files / Write Data,我现在无法创建新文件。这似乎是Windows错误/限制。如果我以编程方式调用该GetFileAttributes文件夹上的API,FILE_ATTRIBUTE_DIRECTORY则会设置该属性...但未设置FILE_ATTRIBUTE_READONLY
AlainD

2
请注意,从Windows 7开始,对话框进行了更改,Read-only (Only applies to files in this folder)以使该选项的实际作用更加清晰。此答案中有新对话框的屏幕截图。
ComicSansMS

Answers:


56

与文件的“只读”属性不同,Windows,Windows组件和配件以及其他程序通常会忽略文件夹的“只读”属性。例如,您可以使用Windows资源管理器删除,重命名和更改具有“只读”属性的文件夹。

Windows资源管理器仅使用“只读”和“系统”属性来确定该文件夹是否为特殊文件夹,例如具有Windows定制视图的系统文件夹(例如,“我的文档”,“收藏夹”,“字体”,“下载的程序文件”) ,或使用文件夹“属性”对话框的“自定义”选项卡自定义的文件夹。因此,Windows资源管理器不允许您查看或更改文件夹的只读或系统属性。当文件夹设置了“只读”属性时,它将导致资源管理器请求该文件夹的Desktop.ini,以查看是否需要设置任何特殊的文件夹设置。

来源:https : //support.microsoft.com/en-gb/help/326549/you-cannot-view-or-change-the-read-only-or-the-system-attributes-of-fo

这是一篇旧文章,但对于所有版本的Windows仍然适用。

为防止在文件夹中创建文件,请使用Security文件夹属性中的选项卡更改权限 。点击Advanced按钮并添加规则以拒绝访问Create Files / Write Data


1
@AlainD是的。这是一篇老文章,但仍然适用于Windows的较新版本。我会稍后再扩展答案。
大卫·马歇尔

1
因此,文件夹的“只读”属性与它完全是只读完全无关吗?仅仅是UX失败而已吗?
Pedro A

6
@Hamsteriffic这是FAT文件系统的遗留物。FAT仅支持少数文件属性,RO是其中之一。NTFS具有用于访问控制的高级ACL机制,因此使用NTFS时FAT属性并不重要。但是,所讨论的特定对话框是在多年前设计的,当时FAT仍然很流行,此后从未更改过。
oakad

4
@Hamsteriffic所以,总结一下奥卡德斯评论:是的。
亚历山大·科苏贝克

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.