【问题标题】:How to configure permissions on application folder to write XML Documents如何配置应用程序文件夹的权限以写入 XML 文档
【发布时间】:2009-11-18 18:58:33
【问题描述】:

我有一个使用 VS2005 的桌面应用程序。

应用程序将 XML 文档写入应用程序的文件夹。

当我使用管理员帐户运行时,应用程序运行正常,但当我以没有访问权限的用户身份运行时,我收到拒绝访问错误消息。

我的应用程序将分发给多个用户,因此无法通过 Windows 资源管理器释放访问权限。在机器用户上安装我的应用程序时需要释放访问权限。

我该如何解决这个问题?

我必须使用用户安装应用程序的文件夹,通常是 C:\Program Files\...

我的应用程序将创建以下架构:

C:\Program Files\CapProj\Data\ << where the XML files will be located >>
C:\Program Files\CapProj\Imagens\ << images folder >>

.EXE 文件将位于C:\Program Files\CapProj\CapProj.EXE

我的应用程序没有使用任何数据库系统。此应用程序仅使用 XML 文件来存储数据,因为此应用程序将分发给巴西的许多用户。

【问题讨论】:

    标签: windows visual-studio permissions


    【解决方案1】:

    您应该让您的应用程序将属于该用户的文件写入该用户的“我的文档”文件夹中,而不是写入应用程序的文件夹中。

    您可以使用 .NET Framework 和以下 C# 代码获取 My Documents 文件夹的路径:

    var myDocsPath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments));
    

    如果 XML 文件更像应用程序设置,则使用 E​​nvironment.SpecialFolder.ApplicationData 或a more appropriate special folder

    【讨论】:

      【解决方案2】:

      考虑改用用户的 AppData 目录。您可以使用:

      string appDataDir = Application.UserAppDataPath;
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-05-09
        • 2011-08-21
        • 1970-01-01
        • 2011-05-15
        • 2011-06-19
        • 1970-01-01
        • 2017-07-17
        • 1970-01-01
        相关资源
        最近更新 更多