C# 打开文件时出现Windows Phone 8 UnauthorizedAccess异常

C# 打开文件时出现Windows Phone 8 UnauthorizedAccess异常,c#,debugging,windows-phone-8,windows-phone,file-access,C#,Debugging,Windows Phone 8,Windows Phone,File Access,当从Windows Phone Marketplace下载应用程序时,尝试访问应用程序“stl”文件夹中的“.stl”文件时,我遇到了一个非常奇怪的错误。在调试或发布模式下从Visual Studio 2012 Express启动时,它不会显示此行为。一旦我尝试加载一个文件,它就会给我一个“系统。未经授权的访问异常”C:\Data\Programs\APPUID\Install\Stl\test.Stl“以几乎完全相同的方式从“gcode”访问.gcode”文件时,异常被拒绝,不会导致任何错误

当从Windows Phone Marketplace下载应用程序时,尝试访问应用程序“stl”文件夹中的“.stl”文件时,我遇到了一个非常奇怪的错误。在调试或发布模式下从Visual Studio 2012 Express启动时,它不会显示此行为。一旦我尝试加载一个文件,它就会给我一个“系统。未经授权的访问异常”C:\Data\Programs\APPUID\Install\Stl\test.Stl“以几乎完全相同的方式从“gcode”访问.gcode”文件时,异常被拒绝,不会导致任何错误

我不知道这可能是什么原因,也不知道如何调试,因为我不知道是否可以以某种方式将调试器附加到商店下载的应用程序的实例

我也不知道从商店和VisualStudio部署完全相同的应用程序可能有什么不同。如果在未连接调试器的情况下从手机启动应用程序,则Visual Studio安装的应用程序也不会出现任何问题

有什么想法吗

该文件由文件流打开,然后由二进制阅读器使用。我不确定是否真的需要源代码,也不确定需要哪部分源代码,但重要的是:

FileStream fileStream = new FileStream(filePath, FileMode.Open);

这里的“filePath”是“Stl\test.Stl”。

如果看不到实际的代码,很难说问题出在哪里。因此,我将提供另一种解决方案,而不是试图了解你的想法

我曾在Windows Phone上广泛使用过独立存储,并从中学到了这一点

世界上没有任何一个库、API、SDK和Web服务比windows phone上的孤立存储具有更糟糕的错误报告

所有内容都是无效访问或未经授权的访问,没有进一步的信息

为了解决这个问题,我创建了一个DLL,用于将对象序列化到独立存储中

您只需将
[DataContractAttribute]
放在类名上方,并将
[DataMemeber]
放在任何要保存的变量上方。然后将对象和唯一名称传递到savefile方法中。就这样!即时保存

你可以找到我的免费DLL EZ_Iso.DLL。带有示例代码和说明

该代码是开源的,因此如果您愿意,也可以反编译dll,看看它是如何工作的


如果您有任何问题或改进,请随时在这里或twitter上与我联系。

好的,我已经解决了。“install”目录实际上是受限访问的,但由于某些原因,Visual Studio签名过程使应用程序具有足够的权限访问此文件夹。确定相对目录的正确过程不是使用“directory.GetCurrentDirectory()”,而是使用“ApplicationData.Current.LocalFolder”。希望这有帮助

请尝试在管理模式下运行vs,或为您提到的文件夹分配访问权限。@akbarali抱歉,您能否详细说明您希望我做什么,因为我很难理解。按照您提到的路径,转到该文件夹,打开“属性”,然后在“安全”选项卡“分配完全控制”,单击“应用”,然后运行应用程序。很抱歉,由于Windows Phone没有文件资源管理器,我该怎么做呢?@akbarali如果我不知道,我很抱歉,但你确实意识到这个问题与“Windows Phone”应用程序有关,因为在xap包中无法正常运行,而不是“Windows”应用程序。我同意错误处理,通常是线程问题(两个线程接触同一个文件)当我收到错误Hi Anthony-链接已断开-如果您仍然有文件,请修复它好吗?感谢you@user3141326嘿,谢谢你看。我最近重建了我的服务器,使这些资产不再存在于服务器上。我很乐意在本周重新发布,但是,这是两年前写的。我不确定它是否还能用。当然-有机会请分享-无保修=)。至少可以通过查看源代码帮助我了解可能的问题。非常感谢。