好吧,我是一个 C 新手。如何测试一个文件在 Windows 上是否只读。
我尝试使用 GetFileAttributes 函数进行一些操作,但无济于事。
给定文件的路径,测试它是否只读的正确方法是什么?
Edit:
所以我现在还停留在这一点上。我想检查用户是否有权在 C:\Program Files 中添加和编辑文件...但我似乎无法得到任何工作建议。
当我使用 !(GetFileAtrributes(path) & FILE_ATTRIBUTES_READONLY) 时,它表明该目录不是只读的。然后我尝试编写一个文件并测试它是否有效:
strcat(path,"\\testFile000");
FILE *test = 0;
test = fopen(path,"w");
int i = fwrite("ab",1,sizeof("ab"),test);
但是当我做这个测试时,它是非空的,i==3并且操作系统中没有出现文件。
有任何想法吗?
GetFileAttributes 是正确的 Windows 调用 - 请参阅MSDN 示例 http://msdn.microsoft.com/en-us/library/aa365522%28v=VS.85%29.aspx for use
示例测试是只读的,测试是检查的dwAttrs & FILE_ATTRIBUTE_READONLY
如果文件是只读的,则该值将不为零。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)