在本地系统上,是否有(合理)保证的地方来创建目录结构来写入文件?我正在寻找不需要管理权限来更改权限的解决方案?
经过一番研究,我看到了这个用于查找当前用户的桌面文件夹的答案。我可以使用它,但还有哪些其他选项可用?
综合研究:
在本地系统上,是否有(合理)保证的地方来创建目录结构来写入文件?我正在寻找不需要管理权限来更改权限的解决方案?
经过一番研究,我看到了这个用于查找当前用户的桌面文件夹的答案。我可以使用它,但还有哪些其他选项可用?
综合研究:
考虑使用隔离的存储类。
独立存储为您提供与给定用户和程序集关联的存储位置;它可以在不完全受信任的环境中工作,并且它可以使用漫游来保持用户的数据存在于不同的机器上。看
http://msdn.microsoft.com/en-us/library/System.IO.IsolatedStorage.aspx
详情。
实际上,特殊文件夹是特殊的,因为有合理的保证它们会存在。
没有其他文件夹有这样的保证。甚至C:\
不能保证(尽管它很可能出现在绝大多数 Windows 系统上)。
ApplicationData下的自定义文件夹是为给定用户编写应用程序特定数据或CommonApplicationData
在系统上的所有用户之间共享应用程序数据的常用位置。
在实现漫游的环境中(用户的数据随身携带,无论他登录哪个物理服务器),ApplicationData
都会跟随用户。如果您不希望这种行为,您可以LocalApplicationData
改用。
AppData 路径可能是您想要的。windows XP+中的这个文件夹可以用
string folder = System.Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData);
通常,应用程序会在其下创建一个子文件夹来存储其数据,并且不需要任何特殊权限即可读取/写入。