拒绝访问c#中的文件

本文关键字:文件 拒绝访问 | 更新日期: 2023-09-27 18:05:50

我使用c# XNA创建了一款游戏,使用简单的文件IO来处理保存游戏数据,但是当我打包游戏并让其他人运行它时,这会产生一个问题。经过几次测试,我发现游戏可以在管理员中运行,但是当没有这样做时,会抛出unauhorizonaccessexcepeption(并且在未被捕获时简单地挂起无响应)。这对我来说是有意义的,因为我记得当我在尝试文件IO时看到了这个异常。

我可以简单地捕捉异常,不做任何处理,让游戏本身响应…但是保存功能不起作用,除非以Admin权限运行。

所以我的问题是,有没有一个地方,我可以保存到,不是用户侵入,但没有管理员访问访问?这是一个可到达地点的问题还是别的什么?有什么像样的办法可以解决这个问题吗?如果我需要提供代码或任何更多的细节,请告诉我。

拒绝访问c#中的文件

在用户配置文件中的某个位置,例如AppData或My Documents。

获取AppData的路径如下:

Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)

环境文档。get文件夹路径在这里:

http://msdn.microsoft.com/en-gb/library/system.environment.getfolderpath.aspx

您要在哪里保存文件?

根据您想要保存的内容,我认为保存到ApplicationData是一个不错的选择。