我被拒绝访问windows 7系统中普通用户的日志文件,以及联系管理员消息。但在xp机器上,它对普通用户和管理员用户都工作得很好。
发布于 2011-01-11 14:47:48
应该是Windows7,我也遇到了同样的问题。
我有一个控制台应用程序,当应用程序在我的本地计算机中构建并双击bin文件夹中的exe文件时,它将启动。应用程序使用的日志文件是可访问的,并且会正确更新。
但是,当我为应用程序创建MSI时,当我安装它并启动exe时,日志文件的访问被拒绝,
发布于 2011-01-11 17:41:25
您可能知道Windows Vista和Windows 7在程序文件目录方面所做的修改。基本上,如果任何用户可以写入此目录,他们就可以修改一个用户可以执行的可执行文件,这是一个巨大的安全漏洞。
因此,根据设计,新版本的windows将不允许您写入程序文件目录,除非您具有管理员权限。
有一些推荐的文件夹可供您使用,具体取决于您需要执行的操作以及需要与多少用户共享文件。看一看Environment.GetFolderPath(),它有跨平台的应用程序接口来检索安全位置,以便在用户上下文中写入。
另一种选择是编写一个MSI,然后在文件上创建一个特殊的ACL,允许用户编辑它,但是如果你想要的只是一个日志文件,为什么要让你的应用变得脆弱呢?
https://stackoverflow.com/questions/4654844
复制相似问题