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

# XblAchievementsManagerAddLocalUser

> XblAchievementsManagerAddLocalUser

# XblAchievementsManagerAddLocalUser

Inicializa o Achievements Manager e gera um cache local de conquistas para um usuário.

## Sintaxe

```cpp theme={null}
HRESULT XblAchievementsManagerAddLocalUser(  
         XblUserHandle user,  
         XTaskQueueHandle queue  
)  
```

### Parâmetros

*user*   \_In\_\
Tipo: XblUserHandle

Usuário do XBOX Live para o qual as conquistas serão buscadas.

*queue*   \_In\_opt\_\
Tipo: XTaskQueueHandle

Fila a ser usada para operações em segundo plano deste usuário (opcional).

### Valor retornado

Tipo: HRESULT

Código de retorno HRESULT para esta operação de API.

## Comentários

Como `XblAchievementsManagerAddLocalUser` requer uma conexão com a Internet para rastrear corretamente as informações do usuário, ela só deve ser chamada enquanto houver conexão com a Internet. Usar [XNetworkingRegisterConnectivityHintChanged](/pt-BR/reference/networking/xnetworking/functions/xnetworkingregisterconnectivityhintchanged) é uma boa maneira de verificar a conexão.

Se o Achievements Manager não estiver inicializado, as chamadas para [XblAchievementsManagerUpdateAchievement](/pt-BR/reference/live/xsapi-c/achievements_manager_c/functions/xblachievementsmanagerupdateachievement) falharão. Nesse caso, devem ser feitas chamadas para [XblAchievementsUpdateAchievementAsync](/pt-BR/reference/live/xsapi-c/achievements_c/functions/xblachievementsupdateachievementasync) à medida que as condições das conquistas forem atendidas, para garantir que o progresso continue sendo rastreado. Veja um exemplo de como isso pode ser implementado:

```cpp theme={null}
HRESULT hr = XblAchievementsManagerUpdateAchievement(xuid, "2", 3);
if (FAILED(hr))
{
    XAsyncBlock async{};
    hr = XblAchievementsUpdateAchievementAsync(m_xblContext, xuid, "2", 3, &async);
    if (SUCCEEDED(hr))
    {
        // this simple example is thread blocking. 
        // replace with whatever async pattern used by other XAsync calls in title
        XAsyncGetStatus(&async, true); 
    }
}
```

## Requisitos

**Cabeçalho:** achievements\_manager\_c.h

**Biblioteca:** Microsoft.Xbox.Services.14x.GDK.C.lib

## Confira também

[achievements\_manager\_c](/pt-BR/reference/live/xsapi-c/achievements_manager_c/achievements_manager_c_members)


## Related topics

- [Visão geral da API Achievements Manager do XBOX](/pt-BR/services/xbox-services/player-data/achievements/achievements-manager/live-achievements-manager-overview.md)
- [XblAchievementsManagerUpdateAchievement](/pt-BR/reference/live/xsapi-c/achievements_manager_c/functions/xblachievementsmanagerupdateachievement.md)
- [XblAchievementsManagerRemoveLocalUser](/pt-BR/reference/live/xsapi-c/achievements_manager_c/functions/xblachievementsmanagerremovelocaluser.md)
- [XblSocialManagerAddLocalUser](/pt-BR/reference/live/xsapi-c/social_manager_c/functions/xblsocialmanageraddlocaluser.md)
- [XblMultiplayerManagerLobbySessionAddLocalUser](/pt-BR/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerlobbysessionaddlocaluser.md)
