C# 访问被拒绝。Windows Phone 8.1中的HRESULT:0x80070005异常

C# 访问被拒绝。Windows Phone 8.1中的HRESULT:0x80070005异常,c#,file-upload,windows-phone-8.1,removable-storage,C#,File Upload,Windows Phone 8.1,Removable Storage,我正在开发Windows Phone 8.1 Silverlight应用程序 我正试图从SD卡上载文档,但出现此错误 Access is denied. Exception from HRESULT: 0x80070005 System.UnauthorizedAccessException 我还在WMAppManifest文件中添加了“ID\u CAP\u可移动存储”功能。但是没有起作用 请参见下面的我的代码: private async void UploadDocument() {

我正在开发Windows Phone 8.1 Silverlight应用程序

我正试图从SD卡上载文档,但出现此错误

Access is denied. Exception from HRESULT: 0x80070005
System.UnauthorizedAccessException
我还在WMAppManifest文件中添加了“ID\u CAP\u可移动存储”功能。但是没有起作用

请参见下面的我的代码:

private async void UploadDocument()
{
  StorageFolder externalDevices = KnownFolders.RemovableDevices;

  StorageFolder sdCard = (await externalDevices.GetFoldersAsync()).FirstOrDefault();

  if (sdCard != null)
  {
      //An SD card is present and the sdCard variable now contains a reference to it
  }

  else
  {
      // No SD card is present.
  }
}

WP8.1还有一个新的清单文件-Package.appxmanifest-确保您也在那里添加了功能-Location。此外,您还必须添加文件类型关联,因为它是Silverlight

虽然(我不知道为什么)您必须在第一次从代码中添加此内容-右键单击Package.appxmanifest file->查看代码,然后在应用程序/扩展部分添加如下内容:


文本文件
.txt

添加并保存后,您就可以通过图形用户界面添加/编辑文件类型关联。

如果您使用静态方法访问SD卡,请避免使用它。@Gk_999该怎么做?静态方法是什么?我真的很抱歉,我不知道这个问题。谢谢你,请指导我。我的意思是,如果你上面的代码是静态方法,那么就避免它,也就是说,创建一个非静态类,创建一个对象,然后使用这个方法。这“可能”是导致此错误的一个可能原因,不是必需的。@Gk_999好的,请参阅我的编辑,我仍然收到相同类型的错误。Thanks@Romasz我在两个清单文件中都添加了功能:WMAppmanifest和package.appxmanifest,但没有发现什么问题。谢谢,但是有没有办法允许任何类型的文档,以及“pdf”和“excel”文件的内容类型是什么。非常感谢你@Romasz@NiteshKothariWP8.0和WP8.1 Silverlight已经-你将无法与他们联系。好了,兄弟,终于开始工作了。非常感谢你@罗毛斯