> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# XPackageEnumerateChunkAvailability

> XPackageEnumerateChunkAvailability

# XPackageEnumerateChunkAvailability

Examine le package d'installation et énumère la disponibilité de tous les blocs qui correspondent aux sélecteurs spécifiés.

## Syntaxe

```cpp theme={null}
HRESULT XPackageEnumerateChunkAvailability(  
         const char* packageIdentifier,  
         XPackageChunkSelectorType type,  
         void* context,  
         XPackageChunkAvailabilityCallback* callback  
)  
```

### Paramètres

*packageIdentifier*   \_In\_z\_\
Type : char\*

Chaîne qui identifie de manière unique le package installé sur le disque. Pour plus d'informations sur les identificateurs de package, consultez [Gérer et accorder des licences pour le contenu téléchargeable (DLC)](/fr/publishing/xstore-commerce/xstore-dlc).

*type*   \_In\_\
Type : [XPackageChunkSelectorType](/fr/reference/system/xpackage/enums/xpackagechunkselectortype)

Type d'attributs à énumérer.

*context*   \_In\_\
Type : void\*

Contexte à transmettre au rappel spécifié dans le paramètre *callback*.

*callback*   \_In\_\
Type : [XPackageChunkAvailabilityCallback\*](/fr/reference/system/xpackage/functions/xpackagechunkavailabilitycallback)

Rappel à appeler à la fin de l'opération.

### Valeur renvoyée

Type : HRESULT

Code de réussite ou d'erreur HRESULT.

## Remarques

<Note>Cette fonction ne peut pas être appelée en toute sécurité sur un thread à contrainte de temps. Pour plus d'informations, consultez [Threads à contrainte de temps](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/console-dev/overviews/threads/time-sensitive-threads).</Note>

**XPackageEnumerateChunkAvailability** permet d'examiner le package et d'énumérer la disponibilité de tous les sélecteurs d'un type particulier. Par exemple, un appel avec **XPackageChunkSelectorType::Language** énumère tous les attributs de langue du package, ainsi que leur disponibilité.

Dans l'exemple ci-dessous, un jeu affiche toutes les langues qu'il prend en charge et permet à l'utilisateur d'installer ou de supprimer une langue. Pour ce faire, le jeu interroge le package afin de déterminer quelles langues sont disponibles et si elles sont installées.

```cpp theme={null}
HRESULT GetPackageLanguages(_Out_ std::map<std::string, bool>& languages)
{
    char id[XPACKAGE_IDENTIFIER_MAX_LENGTH];

    HRESULT hr = XPackageGetCurrentProcessPackageIdentifier(_countof(id), id);
    if (FAILED(hr)) return hr;

    hr = XPackageEnumerateChunkAvailability(id,
        XPackageChunkSelectorType::Language, &languages,
        [](void* context, const XPackageChunkSelector* sel, XPackageChunkAvailability av)
    {
        auto languages = static_cast<std::map<std::string, bool>*>(context);
        switch (av)
        {
        case XPackageChunkAvailability::Ready:
        case XPackageChunkAvailability::Pending:
            languages->emplace(sel->language, true);
            break;

        case XPackageChunkAvailability::Installable:
            languages->emplace(sel->language, false);
            break;

        case XPackageChunkAvailability::Unavailable:
        default:
            break;
        }
        return true;
    });

    return hr;
}
```

## Configuration requise

**En-tête :** XPackage.h

**Bibliothèque :** xgameruntime.lib

**Plateformes prises en charge :** Windows, consoles de la famille XBOX One et consoles XBOX Series

## Documentation conceptuelle

* [Threads à contrainte de temps](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/console-dev/overviews/threads/time-sensitive-threads)

## Voir aussi

[XPackage](/fr/reference/system/xpackage/xpackage_members)\
[Installation en streaming et Intelligent Delivery](/fr/build/core-features/common/packaging/overviews/streaming_install-intelligent_delivery)


## Related topics

- [XPackageEnumerateChunkAvailability](/reference/system/xpackage/functions/xpackageenumeratechunkavailability.md)
- [XPackageChunkAvailabilityCallback](/reference/system/xpackage/functions/xpackagechunkavailabilitycallback.md)
