Share via


Récupération des informations d’état

[La fonctionnalité associée à cette page, Lecteur multimédia Windows SDK, est une fonctionnalité héritée. Il a été remplacé par MediaPlayer. MediaPlayer a été optimisé pour Windows 10 et Windows 11. Microsoft recommande vivement que le nouveau code utilise MediaPlayer au lieu de Lecteur multimédia Windows SDK, lorsque cela est possible. Microsoft suggère que le code existant qui utilise les API héritées soit réécrit pour utiliser les nouvelles API si possible.]

Les informations d’état sont mises à jour à l’aide du minuteur créé dans la fonction Init . Toutes les status sont mises à jour à l’aide du même minuteur. Le nom de la fonction pour l’événement du minuteur est OnTimer.

OnTimer détermine les informations à afficher en fonction de la sélection de l’utilisateur, qui est stockée dans la variable globale nommée g_oCurrentDLItem. La fonction teste d’abord si les valeurs de taille ou de progression sont valides et crée une chaîne pour chaque cas.

var Size = g_oCurrentDLItem.size <=0 ? "Waiting..." : g_oCurrentDLItem.size + " bytes";
var Progress = g_oCurrentDLItem.progress <=0 ? "Waiting..." : g_oCurrentDLItem.progress + " bytes";

Si une valeur est valide, la chaîne représente le nombre d’octets. Si la valeur n’est pas valide, par exemple -1, la chaîne fournit un message pour informer l’utilisateur que les informations ne sont pas encore disponibles.

Ensuite, un bloc de commutateur détermine si le téléchargement de l’élément sélectionné est terminé ou annulé. Si l’un ou l’autre cas est vrai, la valeur des variables Size ou Progress est mise à jour en conséquence.

switch(g_oCurrentDLItem.downloadState)
{
    case 3:            
        Size = "Completed";
        Progress = "Completed";
        break;
        
    case 4:
        Size = "Canceled";
        Progress = "Canceled";
        break;
        
    default:
        break;                
}

Enfin, les informations status s’affichent dans l’élément DIV nommé dlstate.

Utilisation du Gestionnaire de téléchargement