写入隐藏文件有什么问题吗?

写入隐藏文件有什么问题吗?

如果我在记事本中编辑隐藏文件,我可以保存更改。在写字板中编辑并尝试保存同一个文件会导致弹出“访问 C:...\file.txt”被拒绝”对话框。

在我的特定场景中,我无法隐藏.ReSharper.user文件,这让我很沮丧。如果我这样做,下次我关闭 Visual Studio 时,ReSharper 会抱怨它无法保存我的设置。

啊!为什么 Windows 程序与能够写入隐藏文件不一致?为什么文件的隐藏属性会影响其可写性?

答案1

我目前能够在 ReSharper v6.0 中重现此问题。问题可能源于 File.Exists() 调用在文件隐藏时未​​检测到该文件。因此,我已记录了潜在解决方案的票据:

RSRP-287503 如果文件被隐藏,则保存解决方案设置(ReSharper.user)时出错

我不会说 Windows 程序在处理隐藏文件时不一致,但是在设计软件时必须小心谨慎,以正确适应访问隐藏文件可能发挥作用的情况(就像本例中的 ReSharper 一样)

答案2

您是否已检查以确保 .ReSharper.user 文件未标记为只读?据我测试,Visual Studio 2008 和 2010 可以正常写入隐藏文件(查找解决方案旁边的 .suo 文件进行检查)。如果您使用版本控制系统,它通常会在签入文件时将文件标记为只读。如果使用版本控制系统,您可能已将 .ReSharper.user 文件包含在项目中并签入它们,这会使它们变为只读。将它们签出或从源代码控制中删除,以便能够写入它们。

相关内容