C# 在我的应用程序文件夹中重写xml文件

C# 在我的应用程序文件夹中重写xml文件,c#,wpf,xml,deployment,C#,Wpf,Xml,Deployment,我正在使用WPF-C#,当我关闭应用程序时,我需要编写一些xml文档。它位于我的应用程序文件夹(../Data/test.xml)中。它在调试时工作。部署应用程序时,无法访问program files文件夹中的xmlfile。我怎样才能解决这个问题。。下图是异常情况原因。你也可以解决这个问题 使用“以管理员身份运行”选项,从应用程序中的右键单击菜单 修改AppManifest文件 更改文件位置用户可写位置 用户无法修改位于程序文件中的文件 如果您有要修改的配置文件,则需要将其存储在用户自己的Ap

我正在使用WPF-C#,当我关闭应用程序时,我需要编写一些xml文档。它位于我的应用程序文件夹(../Data/test.xml)中。它在调试时工作。部署应用程序时,无法访问program files文件夹中的xmlfile。我怎样才能解决这个问题。。下图是异常情况

原因。你也可以解决这个问题

  • 使用“以管理员身份运行”选项,从应用程序中的右键单击菜单
  • 修改AppManifest文件
  • 更改文件位置用户可写位置

  • 用户无法修改位于
    程序文件
    中的文件

    如果您有要修改的配置文件,则需要将其存储在用户自己的
    ApplicationData
    文件夹中,例如:

    C:\Users\Bill\AppData\Local\SoftCo Software Inc\SuperApp\appconfig.xml
    
    如果您希望标准用户能够修改此配置文件,那么您的安装程序应该授予所有人对该文件的完全控制权。您的安装程序是以管理员身份运行的,因此它将具有更改权限的权限


    但你不应该这样做;这允许一个用户更改会影响另一个用户的程序设置。这些设置应为每个用户的设置(并存储在用户已经可以访问的
    %AppData%
    中)。

    如果工作正常,我可以重写xml文件。但每次打开应用程序时,都会弹出UAC以授予访问权限。有什么可以避免的吗?没有,您可以在机器中禁用UAC。否则,如果要将文件保存在程序文件中,则没有选项。