如何创建任何用户都可以访问的文件?

时间:2011-11-18 00:44:33

标签: c# .net

我的软件需要在文件系统上生成文件,该文件可以被我的程序的任何其他实例读取,无论它在哪个用户帐户下运行。我遇到的问题是,如果在管理员帐户下创建文件,那么当我尝试在不同帐户下读取文件内容时,我会遇到UnauthorizedAccessException。这是我用来创建文件的代码

using (var fileStream = File.Create(path))
using (var streamWriter = new StreamWriter(fileStream))
{
    streamWriter.Write(/*some data*/);
}

并从文件中读取

using (var fileStream = new FileStream(fileName, FileMode.Open))
using (var streamReader = new StreamReader(fileStream))
{
    var idLine = streamReader.ReadLine();
    if (idLine != null) fileContents = idLine;
}

由于

2 个答案:

答案 0 :(得分:2)

如果要更改对文件的访问权限,则必须使用AccessControl:http://msdn.microsoft.com/en-us/library/9c13ttb3.aspx

答案 1 :(得分:0)

致电Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData)以获取该计算机上所有用户/帐户均可访问(读/写等)的应用程序特定路径。