> ## 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.

# XPackageEnumerationCallback

> XPackageEnumerationCallback

# XPackageEnumerationCallback

O retorno de chamada usado por [XPackageEnumeratePackages](/pt-BR/reference/system/xpackage/functions/xpackageenumeratepackages) 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](/pt-BR/reference/system/xpackage/functions/xpackageenumeratepackages) quando a enumeração do pacote foi iniciada.

*details*   \_In\_\
Tipo: [XPackageDetails](/pt-BR/reference/system/xpackage/structs/xpackagedetails)\*

Ponteiro para uma estrutura [XPackageDetails](/pt-BR/reference/system/xpackage/structs/xpackagedetails) 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](/pt-BR/reference/system/xpackage/functions/xpackageenumeratepackages).

Tanto [XPackageEnumeratePackages](/pt-BR/reference/system/xpackage/functions/xpackageenumeratepackages) quanto [XPackageRegisterPackageInstalled](/pt-BR/reference/system/xpackage/functions/xpackageregisterpackageinstalled) fornecem detalhes sobre uma instalação por meio de uma estrutura [XPackageDetails](/pt-BR/reference/system/xpackage/structs/xpackagedetails). 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](/pt-BR/reference/system/xpackage/functions/xpackageenumeratepackages) para mostrar e acompanhar os itens em andamento e usar [XPackageRegisterPackageInstalled](/pt-BR/reference/system/xpackage/functions/xpackageregisterpackageinstalled) 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)](/pt-BR/publishing/xstore-commerce/xstore-dlc)

## Confira também

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


## Related topics

- [XPackageEnumerationCallback](/reference/system/xpackage/functions/xpackageenumerationcallback.md)
- [XPackageEnumeratePackages](/reference/system/xpackage/functions/xpackageenumeratepackages.md)
