我正在尝试在Windows服务中打开一个文件。但我得到Access拒绝错误。 我使用以下代码。
FileStream stream = File.Open('sample.txt',
FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
如您所见,我只是在阅读权限的情况下开放。该文件已在属性对话框中检查了只读权限。但是,我仍然无法理解为什么我会收到这个错误。
提前致谢
答案 0 :(得分:1)
尝试以下方法:
确保通过将文件流包装在using语句中来处置文件流:
using (FileStream stream = File.Open('sample.exe', FileMode.Open, FileAccess.Read, FileShare.Read))
{
}
此外,尝试将FileShare.Read
而不是FileShare.ReadWrite
作为参数添加到Open语句中,因为FileAccess设置为Read。
确保用户有权访问该文件:右键单击该文件并检查安全性选项卡 - 将读取设置为" Everyone"。如果这不起作用,请将“完全控制”设置为“每个人”作为完整性测试。