应用程序在安装时创建/删除本地xml文件

时间:2014-02-03 12:27:11

标签: c# .net xml file local

我有一个需要创建,读取和删除2个xml文件的应用程序。这些文件存储在与应用程序文件相同的目录中。当我在调试中运行此应用程序时它工作正常。但是一旦为此创建安装程序并运行已安装的程序,它就无法创建文件。有什么办法可以将应用程序权限设置为它已安装到的文件夹吗?

任何帮助都会很棒。

谢谢

以下是使用的代码:

   if (File.Exists("ApplicationData.xml") == true)
                {
                    File.SetAttributes("ApplicationData.xml", FileAttributes.Normal);
                    File.Delete("ApplicationData.xml");
                }

                doc.Save("ApplicationData.xml");

这是抛出System.UnauthorizedAccessException

2 个答案:

答案 0 :(得分:1)

如何将文件放入临时目录,而不是开始更改目录权限?您可以从Path.GetTempPath()获取目录。

答案 1 :(得分:0)

我建议你从你的应用程序创建一个“tmp”文件夹,然后在里面创建你的xml文件。这将保证您拥有文件夹的权限,因为您已在应用程序的权限范围内创建了这些文件夹。

  string folderName = @"Folder";
  string pathString = System.IO.Path.Combine(folderName, "SubFolder");
  System.IO.Directory.CreateDirectory(pathString);

我在这里为您测试过: http://pastebin.com/cAmFQvee

这很好用