尝试从网络中获取文件时获取System.UnauthorizedAccessException

时间:2015-07-28 17:38:30

标签: c# windows-phone-8 shared-directory

我有以下代码:

var pathRoot = Path.GetPathRoot("\\\\192.168.10.106");
var dataFolder = await StorageFolder.GetFolderFromPathAsync(pathRoot);
var filesInsideDataFolder = await dataFolder.GetFilesAsync();
foreach (var item in filesInsideDataFolder)
{
    Debug.WriteLine(item.Name);
}

在我的清单中,我设置了以下功能:

<Capability Name="internetClient" />
<Capability Name="videosLibrary" />
<Capability Name="enterpriseAuthentication" />
<Capability Name="internetClientServer" />
<Capability Name="musicLibrary" />
<Capability Name="picturesLibrary" />
<Capability Name="privateNetworkClientServer" />

为什么在使用时会收到System.UnauthorizedAccessException:

dataFolder.GetFilesAsync()

但不是在使用时:

dataFolder.GetItemsAsync()

使用最后一种方法时,我只能获得文件夹。

我尝试禁用防火墙并关闭防病毒软件。

谢谢!

1 个答案:

答案 0 :(得分:0)

我确实知道我必须设置文件类型关联才能使用。添加后

<Extensions>
    <Extension Category="windows.fileTypeAssociation">
      <FileTypeAssociation Name="mpeg4">
        <DisplayName>MP4</DisplayName>
        <Logo>mp4.png</Logo>
        <InfoTip>Mpeg 4 video file</InfoTip>
        <SupportedFileTypes>
          <FileType ContentType="video/mp4">.mp4</FileType>
        </SupportedFileTypes>
      </FileTypeAssociation>
    </Extension>
  </Extensions>

现在我列出了mp4文件。