Windows 8 GetFileAsync方法提供UnAuthorized错误

时间:2014-04-14 18:27:15

标签: c# .net windows-8.1

以下代码试图尝试从MusicLibrary获取Mp3文件

它给了我,

A first chance exception of type 
'System.UnauthorizedAccessException'
occurred in AccessingPictures.exe

这是我的代码:

public async void getFile()
{
    StorageFolder folder = KnownFolders.MusicLibrary;

    try
    {
        sampleFile = await folder.GetFileAsync("Test1.mp3");
    }
    catch (FileNotFoundException e)
    {
        // If file doesn't exist, indicate users to use scenario 1
        Debug.WriteLine(e);
    }
}

private void btnRead_Click(object sender, RoutedEventArgs e)
{
    getFile();
}

我们无法访问媒体文件吗? 我可以使用文件选择器来做到这一点 但是当我尝试直接访问它时它不起作用。

我在这里遗漏了什么吗?

3 个答案:

答案 0 :(得分:1)

从相机胶卷检索图片

 Void GetCameraPhotos()
      {
        using (var library = new MediaLibrary())
        {

            PictureAlbumCollection allAlbums = library.RootPictureAlbum.Albums;
            PictureAlbum cameraRoll = allAlbums.Where(album => album.Name == "Camera Roll").FirstOrDefault();
            var CameraRollPictures = cameraRoll.Pictures

        }
      }

答案 1 :(得分:0)

除非响应用户请求,否则无法访问这些文件。即,用户必须点击一个按钮或其他东西,并且敲击逻辑最终会调用访问该文件的代码。如果您想在之后访问该文件,则需要将其复制到应用程序的数据文件夹中。

答案 2 :(得分:0)

我终于想出了这个问题。这是因为我没有启用Manifest文件中的功能。

它现在就像一个魅力。

谢谢大家。