BackgroundDownloader.CreateDownload Méthode

Définition

Surcharges

CreateDownload(Uri, IStorageFile)

Initialise un objet DownloadOperation qui contient l’URI spécifié et le fichier dans lequel la réponse est écrite.

CreateDownload(Uri, IStorageFile, IStorageFile)

Initialise un objet DownloadOperation avec l’URI de ressource, le fichier dans lequel la réponse est écrite et le corps de l’entité de demande.

CreateDownload(Uri, IStorageFile)

Initialise un objet DownloadOperation qui contient l’URI spécifié et le fichier dans lequel la réponse est écrite.

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

Paramètres

uri
Uri Uri

Emplacement de la ressource.

resultFile
IStorageFile

Fichier dans lequel la réponse sera écrite.

Retours

Opération de téléchargement résultante.

Attributs

Remarques

Le transfert en arrière-plan ne prend pas en charge les téléchargements simultanés du même URI. Ainsi, une application peut télécharger http://example.com/myfile.wmv une seule fois, ou la télécharger à nouveau une fois le téléchargement précédent terminé. Une application ne doit pas démarrer simultanément deux téléchargements du même URI , car cela peut entraîner des fichiers tronqués.

Important

La création d’un grand nombre de transferts sur le thread d’interface utilisateur main avec CreateDownload peut entraîner une dégradation des performances de l’interface utilisateur de votre application. Si vous mettez en file d’attente un grand nombre de transferts, il est recommandé d’appeler CreateDownload sur un thread de travail en arrière-plan, comme dans l’exemple suivant.

operation = await Task.Run(() => { return myDownloader.CreateDownload(uri, file); });

Notes

Certains systèmes de fichiers ont des limites de taille de fichier. Le transfert en arrière-plan a une logique spéciale pour les transferts à échec rapide qui dépassent les limites de taille de fichier du lecteur de destination (par exemple, les fichiers dont la taille dépasse 4 Go pour les systèmes de fichiers FAT32). Si le serveur répond avec une valeur d’en-tête Content-Length supérieure à la taille de fichier maximale du système de fichiers, l’opération de téléchargement échoue immédiatement avec HRESULT_FROM_WIN32(ERROR_FILE_SYSTEM_LIMITATION).

Voir aussi

S’applique à

CreateDownload(Uri, IStorageFile, IStorageFile)

Initialise un objet DownloadOperation avec l’URI de ressource, le fichier dans lequel la réponse est écrite et le corps de l’entité de demande.

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

Paramètres

uri
Uri Uri

Emplacement de la ressource.

resultFile
IStorageFile

Fichier dans lequel la réponse sera écrite.

requestBodyFile
IStorageFile

Fichier qui représente le corps de l’entité de demande, qui contient les données supplémentaires dont le serveur a besoin avant que le téléchargement puisse commencer. Le fichier vers lequel cet objet pointe doit être valide pendant la durée du téléchargement.

Retours

Opération de téléchargement résultante.

Attributs

Remarques

L’opération DownloadOperation résultante prend en charge les scénarios où une demande de téléchargement valide contient des données spécifiques requises par le serveur. Par exemple, un site web nécessite un formulaire rempli avant que le téléchargement puisse avoir lieu.

Le transfert en arrière-plan ne prend pas en charge les téléchargements simultanés du même URI. Ainsi, une application peut télécharger http://example.com/myfile.wmv une seule fois, ou la télécharger à nouveau une fois le téléchargement précédent terminé. Une application ne doit pas démarrer simultanément deux téléchargements du même URI , car cela peut entraîner des fichiers tronqués.

Important

La création d’un grand nombre de transferts sur le thread d’interface utilisateur main avec CreateDownload peut entraîner une dégradation des performances de l’interface utilisateur de votre application. Si vous mettez en file d’attente un grand nombre de transferts, il est recommandé d’appeler CreateDownload sur un thread de travail en arrière-plan, comme dans l’exemple suivant.

operation = await Task.Run(() => { return myDownloader.CreateDownload(uri, file); });

Notes

Certains systèmes de fichiers ont des limites de taille de fichier. Le transfert en arrière-plan a une logique spéciale pour les transferts à échec rapide qui dépassent les limites de taille de fichier du lecteur de destination (par exemple, les fichiers dont la taille dépasse 4 Go pour les systèmes de fichiers FAT32). Si le serveur répond avec une valeur d’en-tête Content-Length supérieure à la taille de fichier maximale du système de fichiers, l’opération de téléchargement échoue immédiatement avec HRESULT_FROM_WIN32(ERROR_FILE_SYSTEM_LIMITATION).

Voir aussi

S’applique à