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

# XLaunchNewGame

> XLaunchNewGame

# XLaunchNewGame

Met fin au jeu en cours, libère toutes les ressources allouées et lance un nouveau jeu.

## Syntaxe

```cpp theme={null}
void XLaunchNewGame(  
         const char* exePath,  
         const char* args,  
         XUserHandle defaultUser  
)  
```

### Paramètres

*exePath*   \_In\_z\_\
Type : char\*

Chemin et nom de fichier du nouveau jeu à lancer. Ce chemin peut être relatif au répertoire actuel ou absolu. Les jeux qui doivent connaître le chemin de l'exécutable appelant peuvent appeler [GetModuleFileNameA](https://learn.microsoft.com/windows/win32/api/libloaderapi/nf-libloaderapi-getmodulefilenamea) avec nullptr comme handle de module.

*args*   \_In\_opt\_z\_\
Type : char\*

Arguments applicables propres au jeu avec lesquels lancer le nouveau jeu.

*defaultUser*   \_In\_opt\_\
Type : XUserHandle

Handle de l'utilisateur qui lance le nouveau jeu. Si aucune valeur n'est spécifiée, l'utilisateur actuel est
utilisé.

### Valeur de retour

Type : void

Cette fonction ne retourne aucune valeur et ne lève aucune exception, même si elle ne parvient pas à redémarrer le jeu.

## Remarques

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

Cette fonction redémarre le jeu : elle met fin au processus actuel du jeu et redémarre le jeu dans un
nouveau processus. Le jeu est redémarré sans redémarrer la machine virtuelle sur laquelle il
s'exécute. Vous pouvez spécifier un autre utilisateur par défaut et des arguments propres au jeu avec
lesquels redémarrer le jeu; pour plus de détails sur la spécification d'un autre utilisateur par défaut, consultez [Identité
de l'utilisateur et XUser](/fr-CA/build/core-features/common/user/player-identity-xuser).

Le processus actuel est toujours arrêté, même si la fonction rencontre une erreur lors du lancement d'un
nouveau jeu. Par exemple, si une valeur spécifiée pour *exePath*, *args* ou *defaultUser* n'est pas valide,
la fonction ne retourne aucune valeur et ne lève aucune exception.

<Note>Lorsque cette fonction est appelée, tout le contenu téléchargeable (DLC) précédemment monté sera</Note>
démonté, à l'exception du DLC qui héberge la cible de **XLaunchNewGame**. Le lecteur **G:**
continuera de pointer vers la racine du package de base et non vers le nouvel EXE lancé.

<Note>Si un jeu est suspendu après l'appel de **XLaunchNewGame**, mais avant que</Note>
le jeu nouvellement lancé ait configuré son gestionnaire de suspension, le jeu sera arrêté. Il s'agit d'un
intervalle de temps très court et, en pratique, cette situation devrait être très peu probable.

<Note>La mémoire transférée au système à l'aide de [XMemTransferMemory (rubrique sous NDA)](/fr-CA/reference/system/xmem/functions/xmemtransfermemory) est conservée.</Note>

## Configuration requise

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

**Bibliothèque :** xgameruntime.lib

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

## Documentation conceptuelle

* [Threads urgents](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/console-dev/overviews/threads/time-sensitive-threads)
* [Prise en charge des jeux en tant que service (GaaS)](/fr-CA/build/core-features/common/packaging/supporting-games-as-a-service)

## Voir aussi

[XGame](/fr-CA/reference/system/xgame/xgame_members)\
[Identité de l'utilisateur et XUser](/fr-CA/build/core-features/common/user/player-identity-xuser)\
[XLaunchUri](/fr-CA/reference/system/xlauncher/functions/xlaunchuri)


## Related topics

- [XLaunchNewGame](/reference/system/xgame/functions/xlaunchnewgame.md)
- [XLaunchRestartOnCrash](/reference/system/xgame/functions/xlaunchrestartoncrash.md)
- [XGame](/reference/system/xgame/xgame_members.md)
