> ## 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 el administrador de logros y genera una caché local de logros para un usuario.

## Sintaxis

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

### Parámetros

*user*   \_In\_\
Tipo: XblUserHandle

Usuario de XBOX Live para el que se capturan los logros.

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

Cola que se usará para la operación en segundo plano de este usuario (opcional).

### Valor devuelto

Tipo: HRESULT

Código de retorno HRESULT de esta operación de API.

## Comentarios

Dado que `XblAchievementsManagerAddLocalUser` requiere una conexión a Internet para realizar correctamente el seguimiento de la información del usuario, solo se debe llamar mientras se está conectado a Internet. Usar [XNetworkingRegisterConnectivityHintChanged](/reference/networking/xnetworking/functions/xnetworkingregisterconnectivityhintchanged) es una buena manera de comprobar si hay conexión.

Si el administrador de logros no está inicializado, las llamadas a [XblAchievementsManagerUpdateAchievement](/reference/live/xsapi-c/achievements_manager_c/functions/xblachievementsmanagerupdateachievement) producirán un error. En este caso, se deben realizar llamadas a [XblAchievementsUpdateAchievementAsync](/reference/live/xsapi-c/achievements_c/functions/xblachievementsupdateachievementasync) en su lugar a medida que se cumplan las condiciones de los logros, para garantizar que se siga realizando el seguimiento de la progresión. Este es un ejemplo de cómo se puede implementar:

```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

**Encabezado:** achievements\_manager\_c.h

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

## Consulte también

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


## Related topics

- [Información general sobre la API XBOX Achievements Manager](/es/services/xbox-services/player-data/achievements/achievements-manager/live-achievements-manager-overview.md)
- [XblAchievementsManagerUpdateAchievement](/es/reference/live/xsapi-c/achievements_manager_c/functions/xblachievementsmanagerupdateachievement.md)
- [XblAchievementsManagerRemoveLocalUser](/es/reference/live/xsapi-c/achievements_manager_c/functions/xblachievementsmanagerremovelocaluser.md)
- [XblSocialManagerAddLocalUser](/es/reference/live/xsapi-c/social_manager_c/functions/xblsocialmanageraddlocaluser.md)
- [XblMultiplayerManagerLobbySessionAddLocalUser](/es/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerlobbysessionaddlocaluser.md)
