BackgroundDownloader.CreateDownload 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
오버로드
CreateDownload(Uri, IStorageFile) |
지정된 Uri 및 응답이 기록된 파일이 포함된 DownloadOperation 개체를 초기화합니다. |
CreateDownload(Uri, IStorageFile, IStorageFile) |
리소스 URI, 응답이 기록된 파일 및 요청 엔터티 본문을 사용하여 DownloadOperation 개체를 초기화합니다. |
CreateDownload(Uri, IStorageFile)
지정된 Uri 및 응답이 기록된 파일이 포함된 DownloadOperation 개체를 초기화합니다.
public:
virtual DownloadOperation ^ CreateDownload(Uri ^ uri, IStorageFile ^ resultFile) = CreateDownload;
/// [Windows.Foundation.Metadata.Overload("CreateDownload")]
DownloadOperation CreateDownload(Uri const& uri, IStorageFile const& resultFile);
[Windows.Foundation.Metadata.Overload("CreateDownload")]
public DownloadOperation CreateDownload(System.Uri uri, IStorageFile resultFile);
function createDownload(uri, resultFile)
Public Function CreateDownload (uri As Uri, resultFile As IStorageFile) As DownloadOperation
매개 변수
- resultFile
- IStorageFile
응답이 기록될 파일입니다.
반환
결과 다운로드 작업입니다.
- 특성
설명
백그라운드 전송은 동일한 Uri의 동시 다운로드를 지원하지 않습니다. 따라서 앱은 한 번 다운로드 http://example.com/myfile.wmv
하거나 이전 다운로드가 완료된 후 다시 다운로드할 수 있습니다. 이 경우 파일이 잘릴 수 있으므로 앱에서 동일한 Uri 의 두 다운로드를 동시에 시작해서는 안 됩니다.
중요
CreateDownload를 사용하여 기본 UI 스레드에서 많은 수의 전송을 만들면 앱의 UI 성능이 저하될 수 있습니다. 많은 수의 전송을 대기하는 경우 다음 예제와 같이 백그라운드 작업자 스레드에서 CreateDownload 를 호출하는 것이 좋습니다.
operation = await Task.Run(() => { return myDownloader.CreateDownload(uri, file); });
참고
일부 파일 시스템에는 파일 크기 제한이 있습니다. 백그라운드 전송에는 대상 드라이브의 파일 크기 제한을 초과하는 빠른 전송에 대한 특별한 논리가 있습니다(예: FAT32 파일 시스템의 경우 크기가 4GB를 초과하는 파일). 서버가 파일 시스템의 최대 파일 크기보다 큰 헤더 값으로 Content-Length
응답하는 경우 HRESULT_FROM_WIN32(ERROR_FILE_SYSTEM_LIMITATION)으로 다운로드 작업이 즉시 실패합니다.
추가 정보
적용 대상
CreateDownload(Uri, IStorageFile, IStorageFile)
리소스 URI, 응답이 기록된 파일 및 요청 엔터티 본문을 사용하여 DownloadOperation 개체를 초기화합니다.
public:
virtual DownloadOperation ^ CreateDownload(Uri ^ uri, IStorageFile ^ resultFile, IStorageFile ^ requestBodyFile) = CreateDownload;
/// [Windows.Foundation.Metadata.Overload("CreateDownloadFromFile")]
DownloadOperation CreateDownload(Uri const& uri, IStorageFile const& resultFile, IStorageFile const& requestBodyFile);
[Windows.Foundation.Metadata.Overload("CreateDownloadFromFile")]
public DownloadOperation CreateDownload(System.Uri uri, IStorageFile resultFile, IStorageFile requestBodyFile);
function createDownload(uri, resultFile, requestBodyFile)
Public Function CreateDownload (uri As Uri, resultFile As IStorageFile, requestBodyFile As IStorageFile) As DownloadOperation
매개 변수
- resultFile
- IStorageFile
응답이 기록될 파일입니다.
- requestBodyFile
- IStorageFile
다운로드를 시작하기 전에 서버에 필요한 추가 데이터가 포함된 요청 엔터티 본문을 나타내는 파일입니다. 이 개체가 가리키는 파일은 다운로드 기간 동안 유효해야 합니다.
반환
결과 다운로드 작업입니다.
- 특성
설명
결과 DownloadOperation 은 유효한 다운로드 요청에 서버에 필요한 특정 데이터가 포함된 시나리오를 지원합니다. 예를 들어 웹 사이트에는 다운로드가 수행되기 전에 양식이 채워져 있어야 합니다.
백그라운드 전송은 동일한 Uri의 동시 다운로드를 지원하지 않습니다. 따라서 앱은 한 번 다운로드 http://example.com/myfile.wmv
하거나 이전 다운로드가 완료된 후 다시 다운로드할 수 있습니다. 이 경우 파일이 잘릴 수 있으므로 앱에서 동일한 Uri 의 두 다운로드를 동시에 시작해서는 안 됩니다.
중요
CreateDownload를 사용하여 기본 UI 스레드에서 많은 수의 전송을 만들면 앱의 UI 성능이 저하될 수 있습니다. 많은 수의 전송을 대기하는 경우 다음 예제와 같이 백그라운드 작업자 스레드에서 CreateDownload 를 호출하는 것이 좋습니다.
operation = await Task.Run(() => { return myDownloader.CreateDownload(uri, file); });
참고
일부 파일 시스템에는 파일 크기 제한이 있습니다. 백그라운드 전송에는 대상 드라이브의 파일 크기 제한을 초과하는 빠른 전송에 대한 특별한 논리가 있습니다(예: FAT32 파일 시스템의 경우 크기가 4GB를 초과하는 파일). 서버가 파일 시스템의 최대 파일 크기보다 큰 헤더 값으로 Content-Length
응답하는 경우 HRESULT_FROM_WIN32(ERROR_FILE_SYSTEM_LIMITATION)으로 다운로드 작업이 즉시 실패합니다.