如何配置应用程序文件夹的权限以编写XML文档

时间:2009-11-18 18:58:34

标签: windows visual-studio permissions

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

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

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

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

我如何解决这个问题?

我必须使用User安装应用程序的文件夹,通常是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文件来存储数据,因为此应用程序将分发给Brasil中的许多用户。

2 个答案:

答案 0 :(得分:1)

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

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

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

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

答案 1 :(得分:0)

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

string appDataDir = Application.UserAppDataPath;