如何在C#.Net中的Windows7的C目录中创建目录

时间:2016-08-08 13:58:55

标签: c#

我正在编写异常日志(例如log.txt),我想写下面的路径“C:\ Program Files(x86)\ App \ Log”。当我这样做时,我得到整个路径作为访问被拒绝,这意味着我无法创建名为Log的文件夹并同时写入log.txt,我还有压缩代码来压缩日志文件,如log.zip,这是基于日期的?我确实从堆栈溢出中尝试了一些代码片段,显然没有什么结果。

如何解决此问题?

此致 吉布森

2 个答案:

答案 0 :(得分:4)

您获得的错误很可能是因为普通用户没有权限在" C:\ Program Files(x86)\"下面创建文件夹或文件。目录。 这是故意的,因为普通用户正在写入该目录。

应用程序由管理用户或具有提升权限的用户安装在该目录下。您的应用程序应该将日志文件写入用户配置文件目录下的某个位置,例如:在某些地方"%appdata%"。

我在IT部门工作,我们必须支持编写糟糕的供应商软件,这些软件需要更新%programfiles%目录下的某些文件,这是一场彻头彻尾的噩梦。我们不希望我们的用户通常有权写入该文件夹,因为它可能允许恶意软件 - 病毒等 - 秘密修改我们的应用程序。但是,我们必须在我们的病毒软件中制作例外,并不断维护这个异常应用程序的文件夹的特殊安全性,不幸的是,我们的业务依赖这些应用程序。故事的重点是:不要这样做。这是不好的做法,你的客户也不会满意。

答案 1 :(得分:-1)

  • 在Windows 7上创建文件夹和文件不对任何用户开放 只有授权用户才能创建文件或文件夹
  • 你可以授权主目录上的每个人 你想要添加文件夹,或者你可以在应用程序池中检查 正在启动iis并授予他主文件夹权限的用户