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

# XPackageEnumerationCallback

> XPackageEnumerationCallback

# XPackageEnumerationCallback

O retorno de chamada usado por [XPackageEnumeratePackages](https://docs.xbox.com/pt-BR/reference/system/xpackage/functions/xpackageenumeratepackages.md) para enumerar cada pacote.

## Sintaxe

```cpp theme={null}
bool XPackageEnumerationCallback(  
         void* context,  
         const XPackageDetails* details  
)  
```

### Parâmetros

*context*   \_In\_\
Tipo: void\*

O contexto passado para [XPackageEnumeratePackages](https://docs.xbox.com/pt-BR/reference/system/xpackage/functions/xpackageenumeratepackages.md) quando a enumeração do pacote foi iniciada.

*details*   \_In\_\
Tipo: [XPackageDetails](https://docs.xbox.com/pt-BR/reference/system/xpackage/structs/xpackagedetails.md)\*

Ponteiro para uma estrutura [XPackageDetails](https://docs.xbox.com/pt-BR/reference/system/xpackage/structs/xpackagedetails.md) que contém as informações de instalação do pacote atual na enumeração.

### Valor retornado

Tipo: bool

Retorne true para continuar enumerando pacotes ou false para interromper a enumeração.

## Comentários

O retorno de chamada **XPackageEnumerationCallback** é chamado para cada pacote durante a enumeração de [XPackageEnumeratePackages](https://docs.xbox.com/pt-BR/reference/system/xpackage/functions/xpackageenumeratepackages.md).

Tanto [XPackageEnumeratePackages](https://docs.xbox.com/pt-BR/reference/system/xpackage/functions/xpackageenumeratepackages.md) quanto [XPackageRegisterPackageInstalled](https://docs.xbox.com/pt-BR/reference/system/xpackage/functions/xpackageregisterpackageinstalled.md) fornecem detalhes sobre uma instalação por meio de uma estrutura [XPackageDetails](https://docs.xbox.com/pt-BR/reference/system/xpackage/structs/xpackagedetails.md). Se o pacote estiver sendo instalado, a propriedade **installing** de **XPackageDetails** será **true** e você poderá criar um monitor de instalação para permitir que o identificador do pacote monitore o progresso.

Não há notificações genéricas da fila de instalação; a intenção é usar [XPackageEnumeratePackages](https://docs.xbox.com/pt-BR/reference/system/xpackage/functions/xpackageenumeratepackages.md) para mostrar e acompanhar os itens em andamento e usar [XPackageRegisterPackageInstalled](https://docs.xbox.com/pt-BR/reference/system/xpackage/functions/xpackageregisterpackageinstalled.md) para anunciar a presença de novo DLC. Também não há um mecanismo para iniciar, interromper ou cancelar uma instalação. Da perspectiva de um jogo, a instalação deve cuidar de si mesma. Os erros são repetidos automaticamente e são invisíveis para o jogo.

Exemplo:

```cpp theme={null}
bool CALLBACK ListDlcCallback(
    void* /* context */,
    const XPackageDetails* details)
{
    printf("Found dlc: %s\n", details->displayName);
    return true; // continue enumerating
}

HRESULT ListDlc()
{
    HRESULT hr = XPackageEnumeratePackages(
        XPackageKind::Content,                      /* Looking for content packages (DLC) */
        XPackageEnumerationScope::ThisAndRelated,   /* For this game and related games*/
        nullptr, ListDlcCallback);
    return hr;
}
```

## Requisitos

**Cabeçalho:** XPackage.h

**Biblioteca:** xgameruntime.lib

**Plataformas compatíveis:** Windows, consoles da família XBOX One e consoles XBOX Series

## Documentação conceitual

* [Gerenciar e licenciar conteúdo para download (DLC)](https://docs.xbox.com/pt-BR/publishing/xstore-commerce/xstore-dlc.md)

## Confira também

[XPackage](https://docs.xbox.com/pt-BR/reference/system/xpackage/xpackage_members.md)\
[Como criar e usar pacotes de conteúdo para download (DLC) para PC e XBOX One](https://docs.xbox.com/pt-BR/build/core-features/common/packaging/packaging-downloadable-content-dlc.md)\
[XPackageDetails](https://docs.xbox.com/pt-BR/reference/system/xpackage/structs/xpackagedetails.md)\
[XPackageEnumeratePackages](https://docs.xbox.com/pt-BR/reference/system/xpackage/functions/xpackageenumeratepackages.md)\
[XPackageRegisterPackageInstalled](https://docs.xbox.com/pt-BR/reference/system/xpackage/functions/xpackageregisterpackageinstalled.md)


## Related topics

- [XPackageEnumeratePackages](https://docs.xbox.com/pt-BR/reference/system/xpackage/functions/xpackageenumeratepackages.md)
- [XPackageMountWithUiAsync](https://docs.xbox.com/pt-BR/reference/system/xpackage/functions/xpackagemountwithuiasync.md)
- [Gerenciar e licenciar conteúdo para download (DLC)](https://docs.xbox.com/pt-BR/publishing/xstore-commerce/xstore-dlc.md)
- [XPackage (conteúdo da API)](https://docs.xbox.com/pt-BR/reference/system/xpackage/xpackage_members.md)
- [XPackageFeatureEnumerationCallback](https://docs.xbox.com/pt-BR/reference/system/xpackage/functions/xpackagefeatureenumerationcallback.md)
