【发布时间】:2011-02-06 16:26:59
【问题描述】:
我知道默认情况下 Windows 7 中的用户帐户受到限制,因此程序不能只在系统上的任何位置写入(就像在 Win XP 中那样)。
但我认为有可能,例如允许 c# 应用程序写入它自己的 exe 目录或至少它的子文件夹(并非所有内容都是“用户设置”或应写入“MyDocuments”...)。
所以目前我的 c# 应用程序在尝试在 exe 目录中写入时抛出 UnauthorizedAccessException。
您可以在 c# 代码中做些什么来允许在 exe 目录中写入吗?
【问题讨论】:
-
可执行文件是否在程序文件目录中?在 Windows 7 中,您不能读取/写入 Program Files 下的文件。
-
@Rody: 当然你可以读取
Program Files...中的文件... -
为什么需要这样做?用户被拒绝访问是有充分理由的——在大多数情况下,您尝试完成的工作可能是通过使用不同的存储位置来满足的。您要存储/更改哪些数据要写入程序文件夹?
-
@Heinzi:你说得对,我只写了。即使在权限较低的帐户下运行,当然也允许读取访问权限。
-
自 1999 年发布的 Windows 2000 以来,您无法使用用户级登录写入程序文件夹或 C: 的根目录。
标签: c# windows-7 file-permissions