从程序文件访问时拒绝文件访问

时间:2013-05-31 04:48:19

标签: c# visual-studio-2010

我在VS 2010和C#中开发了一个小的Winform应用程序。并创建了设置。

我已将应用程序配置文件放在应用程序文件夹路径中以保存用户凭据。安装应用程序无法访问配置文件后,因为我给出了程序安装默认路径,如下所示:

  

[ProgramFilesFolder] [生产] [ProductName]的

所以我需要将我的用户凭据永久保存在其他地方。我需要读写权限。我还需要记录应用程序异常。

1 个答案:

答案 0 :(得分:8)

用于保存用户数据的位置位于以下Environment.SpecialFolder位置之一

  • ApplicationData - 用作当前漫游用户的特定于应用程序的数据的公共存储库的目录。漫游用户在网络上的多台计算机上工作。漫游用户的配置文件保存在网络上的服务器上,并在用户登录时加载到系统上。
  • LocalApplicationData - 用作当前非漫游用户使用的特定于应用程序的数据的公共存储库的目录。
  • CommonApplicationData - 用作所有用户使用的特定于应用程序的数据的公共存储库的目录。

您可以使用Enviorment.GetFolderPath

获取路径
var savePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)),
                            "MyAppName");
//This should return the path  %UserProfile%\Roaming\MyAppName\

对于程序日志,我会使用CommonApplicationData,因此来自多个用户的日志都收集在一个位置。