2017-03-15 1 views
0

DownloadsFolder 메서드를 사용하여 파일 및 폴더를 만들고 있습니다.UWP C# 앱의 다운로드 폴더에 StorageFolder 개체를 가져 오는 방법

부모 폴더를 StorageFolder 인스턴스로 가져 와서 앱의 다운로드 폴더에있는 모든 항목을 나열하고 조작 할 수 있습니다.

알려진 StorageFile에서 GetParentAsync()를 시도했지만 반환 값은 null입니다.

StorageFile sf = await DownloadsFolder.CreateFileAsync("testMarker"); 
StorageFolder dlFolder = await sf.GetParentAsync(); 

이 폴더에 프로그래밍 방식으로 액세스 할 수있는 방법이 있습니까?

답변

0

귀하의 앱에 다운로드 디렉토리를 읽을 수있는 권한이없는 것으로 보입니다. GetParentAsync을 사용하면 앱에 권한이있는 상위 항목을 가져올 수 있지만 앱에 권한이없는 폴더는 가져올 수 없습니다.

appxmanifest의 기능에 음악 라이브러리, 그림 라이브러리 및 동영상 라이브러리를 추가하면 GetParentAsync 메서드를 사용하여 상위 폴더를 StorageFolder 폴더로 가져올 수 있습니다.

다운로드 폴더에 파일이나 폴더를 만드는 경우 해당 항목을 나중에 앱에 쉽게 액세스 할 수 있도록 앱의 FutureAccessList에 추가하는 것이 좋습니다.

자세한 내용은 Locations Windows Store apps can access을 참조하십시오.

다른 폴더와 파일을 DownloadsFolder에서 가져 오려면 Open files and folders with a picker이어야합니다.

+0

메인 다운로드 폴더로 돌아가려고하지 않습니다. DowloadsFolder.CreateFileAsync()는이 응용 프로그램의 용도로만 특수 폴더를 만들고 그 폴더로 돌아가려고합니다. – sillyrobot

+0

'DowloadsFolder.CreateFileAsync()'는 앱에 의해 생성 된 폴더에 파일을 생성합니다. GetParentAsync를 사용하여 해당 폴더를 가져올 수 없습니다. 왜 그 폴더를 가져 가고 싶니? –

관련 문제