问题:在运行我的应用程序时使用Windows 7,未经授权的访问exception
我的应用程序引发了未经授权的访问错误 在运行我的应用程序时,我尝试访问以下位置中的目录:Application.UserAppDataPath。
问题:它表示我没有访问Application.UserAppDataPath目录的权限
有没有办法在我的应用程序源代码中设置权限?
就像是:
Application.UserAppDataPath.SetPermissions()
看看你的评论,你说这是你的代码:
StreamReader sr = new StreamReader(Application.UserAppDataPath);
Application.UserAppDataPath
是一个目录 ,而不是一个文件 。 如果您尝试直接打开它,则与尝试在AppData文件夹下一级打开文件相同,您实际上没有权限这样做。
使用Path.Combine
构建AppData文件夹内文件的路径,即
string fileName = Path.Combine(Application.UserAppDataPath, "settings.xml"); StreamReader sr = new StreamReader(fileName);
当然这只是一个例子 – 实际上你应该在AppData中使用特定于你的应用程序的子文件夹。
它可能是一个UAC问题,尝试将您的应用程序作为提升的进程运行,并查看错误是否仍然存在