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

# XPersistentLocalStorageGetPath

> XPersistentLocalStorageGetPath

# XPersistentLocalStorageGetPath

Retourne le chemin d'accès propre au jeu vers le stockage local persistant (PLS) de l'appareil.

## Syntaxe

```cpp theme={null}
HRESULT XPersistentLocalStorageGetPath(  
         size_t pathSize,  
         char* path,  
         size_t* pathUsed  
)  
```

### Paramètres

*pathSize*   \_In\_\
Type : size\_t

Le nombre de caractères de la mémoire tampon fournie pour le chemin du PLS. Pour obtenir cette valeur, appelez [XPersistentLocalStorageGetPathSize](/fr-CA/reference/system/xpersistentlocalstorage/functions/xpersistentlocalstoragegetpathsize).

*path*   \_Out\_writes\_to\_(pathSize,*pathUsed)\
Type : char*

Le chemin du PLS dans lequel votre jeu peut écrire des données.

*pathUsed*   \_Out\_opt\_\
Type : size\_t\*

Le nombre de caractères écrits dans la mémoire tampon fournie.

### Valeur de retour

Type : [HRESULT](https://learn.microsoft.com/openspecs/windows_protocols/ms-erref/0642cb2f-2075-4469-918c-4441e69c548a)

Retourne **S\_OK** en cas de réussite; sinon, retourne un code d'erreur. Pour obtenir la liste des codes d'erreur, consultez [Codes d'erreur](/fr-CA/reference/errorcodes). Si la fonction échoue parce que *pathSize* est inférieur à la longueur du chemin du PLS, la valeur de retour est **E\_FAIL** pour les appareils XBOX et **HRESULT\_FROM\_WIN32(ERROR\_INSUFFICIENT\_BUFFER)** pour les PC.

## Remarques

<Note>Il n'est pas sécuritaire d'appeler cette fonction sur un thread sensible au temps. Pour plus d'informations, consultez [Threads sensibles au temps](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/console-dev/overviews/threads/time-sensitive-threads).</Note>

Les jeux peuvent avoir besoin du PLS pour des tâches comme l'espace de préparation, le DLC en jeu et la génération de contenu à la demande. Bien que l'espace soit conservé d'une activation du jeu à l'autre, il peut aussi être supprimé par les utilisateurs. Pour plus d'informations sur le PLS, consultez [Stockage local](/fr-CA/build/console-features/storage/local-storage)

L'accès au PLS et sa gestion dépendent de la famille de l'appareil. Pour les appareils XBOX, nous fournissons l'accès à un dossier monté à la racine d'un lecteur. La quantité d'espace de stockage provisionnée pour ce dossier est spécifiée dans le fichier MicrosoftGame.config de votre jeu. L'espace provisionné est disponible et toujours présent pendant un lancement de votre jeu. Pour libérer de l'espace, les utilisateurs peuvent supprimer l'espace provisionné sans désinstaller le jeu, lorsque celui-ci n'est pas en cours d'exécution; toutefois, lorsque le jeu est en cours d'exécution, la disponibilité du stockage est garantie. Pour obtenir cet espace provisionné sur les appareils XBOX, vous devez avoir une entrée correspondante dans votre fichier MicrosoftGame.config.

Pour les PC, nous fournissons l'accès à l'emplacement d'un dossier de stockage local sur le PC, mais aucun espace n'est spécifiquement provisionné pour votre jeu. Les utilisateurs peuvent supprimer cet espace même pendant l'exécution du jeu. La disponibilité du stockage n'est pas garantie, et aucune entrée dans votre fichier MicrosoftGame.config n'est requise pour réclamer de l'espace de stockage. Vous devez d'abord vérifier que l'espace disponible dans le dossier de stockage local est suffisant pour les besoins de votre jeu.

Avant d'appeler cette fonction pour récupérer le chemin du PLS, appelez la fonction [XPersistentLocalStorageGetPathSize](/fr-CA/reference/system/xpersistentlocalstorage/functions/xpersistentlocalstoragegetpathsize) pour obtenir le nombre de caractères du chemin du PLS, puis fournissez cette valeur dans le paramètre *pathSize* et allouez au moins autant de caractères pour le paramètre *path*. Une erreur se produit si le nombre de caractères spécifié dans *pathSize* est inférieur à celui du chemin du PLS.

L'exemple suivant montre comment utiliser les fonctions **XPersistentLocalStorageGetPathSize** et **XPersistentLocalStorageGetPath** pour obtenir le chemin du PLS de votre jeu.

```cpp theme={null}
// Confirm that all of the features needed to run asynchronous tasks on 
// task queues are available.
LPCSTR Game::CheckPLSPath()
{
    // Confirm the length of the path to the local storage folder.
    LPCSTR returnPath = "";
    size_t pathSize;
    if (SUCCEEDED(XPersistentLocalStorageGetPathSize(&pathSize)))
    {
        char * path = new char[pathSize];
        size_t * pathUsed = new size_t;
        if (path != nullptr)
        {
            // Get the path to the local storage folder.
            if (SUCCEEDED(XPersistentLocalStorageGetPath(pathSize, path, pathUsed))) 
            {
                // Just to be safe, copy the bytes used in the buffer 
                // to a separate string.
                char * actualPath = new char[*pathUsed];
                strncpy(actualPath, path, *pathUsed);
                returnPath = actualPath;
            }
        }
    };

    return returnPath;
}
```

## Configuration requise

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

**Bibliothèque :** xgameruntime.lib

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

## Documentation conceptuelle

* [Stockage local sur la console XBOX](/fr-CA/build/console-features/storage/local-storage)
* [Threads sensibles au temps](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/console-dev/overviews/threads/time-sensitive-threads)

## Voir aussi

[XPersistentLocalStorageGetPathSize](/fr-CA/reference/system/xpersistentlocalstorage/functions/xpersistentlocalstoragegetpathsize)\
[XPersistentLocalStorage](/fr-CA/reference/system/xpersistentlocalstorage/xpersistentlocalstorage_members)\
[Comment utiliser le nouveau fichier MicrosoftGame.config](/fr-CA/build/core-features/common/game-config/MicrosoftGameConfig-toc)


## Related topics

- [XPersistentLocalStorageGetPath](/reference/system/xpersistentlocalstorage/functions/xpersistentlocalstoragegetpath.md)
- [XPersistentLocalStorageGetPathSize](/reference/system/xpersistentlocalstorage/functions/xpersistentlocalstoragegetpathsize.md)
- [Local storage](/build/console-features/storage/local-storage.md)
- [XPersistentLocalStorage](/reference/system/xpersistentlocalstorage/xpersistentlocalstorage_members.md)
- [XPersistentLocalStorageGetSpaceInfo](/reference/system/xpersistentlocalstorage/functions/xpersistentlocalstoragegetspaceinfo.md)
