我与一些红宝石玩一天,我写了下面的代码红宝石Win32文件只读标志
File.open(my_file, "w+") do | fh |
begin
fh.readonly = true <--------Exception thrown here
ensure
fh.close
end
end
,因为它抛出EACCES因为该文件是只读的,这不工作,如果我改变开旗到“r”这工作得很好。对我来说,这是违反直觉的,因为我认为用“r”打开它意味着我只能读取文件,而不能更改属性。
我正在使用win32文件(0.6.6)和红宝石1.8.7(不能升级为当前项目),这是正常的行为是win-32文件gem的怪癖还是只是一个错误,我能够代码周围。
为只读位设置为true,我必须以w打开+,这似乎更明智
2003 64位,以防万一多一点信息是已在Windows Server上进行这个测试,使差异
尝试使用“w +”打开文件或将readonly设置为true时会引发EACCES? – hellectronic
将readonly设置为true时,对不起,我应该更清楚 –