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

时间:2015-01-02 09:44:58

标签: c# file-upload windows-phone-8.1 removable-drive

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

我正在尝试从SD卡上传文档,但收到此错误。

Access is denied. Exception from HRESULT: 0x80070005
System.UnauthorizedAccessException

我还添加了功能" ID_CAP_REMOVABLE_STORAGE"在WMAppManifest文件中。但是没有用。

请参阅下面的代码:

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.
  }
}

1 个答案:

答案 0 :(得分:4)

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

虽然(我不知道为什么)你必须在第一次从代码中添加它 - 右键单击​​ Package.appxmanifest 文件 - > 查看代码并在 application / Extensions 部分添加例如:

<Extension Category="windows.fileTypeAssociation">
  <FileTypeAssociation Name="text">
    <DisplayName>Text file</DisplayName>
    <SupportedFileTypes>
      <FileType ContentType="text/file">.txt</FileType>
    </SupportedFileTypes>
  </FileTypeAssociation>
</Extension>

添加并保存后,您可以通过图形用户界面添加/编辑 FileTypeAssociations