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

# Wrappers d'API C# Unity pour le GDK

> Référence de l'espace de noms C# XGamingRuntime dans le package GDK pour Unity : conventions de nommage, gestion des HRESULT, modèles asynchrones et exemples natifs et managés.

Utilisez cette rubrique pour comprendre comment utiliser les wrappers d'API afin d'appeler correctement les API du Microsoft Game Development Kit (GDK) et des XBOX services à partir de code managé.

## Accès aux API du Microsoft Game Development Kit (GDK)

Une fois que vous avez importé le package d'API du Microsoft GDK depuis Unity, ses fonctionnalités sont disponibles sous l'espace de noms XGamingRuntime. Toutes les API Gaming Runtime sont disponibles via des méthodes statiques de la classe SDK. Toutes les API des XBOX services sont disponibles via des méthodes statiques de la classe SDK.XBL. L'exemple suivant illustre cette disponibilité.

```cpp theme={null}
using System;

// The namespace under which the "GDK" functionality is available.

using XGamingRuntime;

namespace TestGame
{
    static class Program
    {
        static void Main()
        {
            // All APIs are accessed through static methods on the SDK class.
            Int32 hr = SDK.XGameRuntimeInitialize();

            // All Xbox services APIs are accessed through static methods on the SDK.XBL class.
            Int32 hr = SDK.XBL.XblInitialize(SCID);
            ...
        }
    }
}
```

## Couverture des API et conventions

<Note>
  Toutes les API ne sont pas disponibles via le package. Pour obtenir la liste complète de ces API, consultez les listes d'API du Microsoft Game Development Kit (GDK) et des XBOX services plus loin dans cette rubrique.
</Note>

Conventions :

* Les noms des API correspondent à leurs équivalents du GDK dans la mesure du possible.
* Aucune exception. Les erreurs sont communiquées via des HRESULT.
* Surface d'API plate, sans encapsulation orientée objet.
* Des paramètres out sont utilisés dans les API qui définissent des paramètres.
* Les méthodes asynchrones utilisent des rappels. Pour plus de détails, consultez la section suivante.

## Modèle de programmation asynchrone

La plupart des API asynchrones prennent un rappel comme dernier paramètre. En voici un exemple.

```cpp theme={null}
using System;

using XGamingRuntime;

class SignInManager
{
    public void AddUser()
    {
        SDK.XUserAddAsync(XUserAddOptions.None, this.OnUserAddComplete);
    }

    private void OnUserAddComplete(Int32 hresult, XUserHandle userHandle)
    {
        // Check the result, and then do something with the handle.
    }
}
```

Voici des informations sur le modèle de threading.

* Les méthodes asynchrones s'exécutent immédiatement, et le travail est effectué sur un thread disponible du pool de threads.
  * Le pool de threads est initialisé en interne après un appel à SDK.XGameRuntimeInitialize().
  * Aucune option de configuration du pool de threads n'est exposée.
* Le rappel de résultat est invoqué après l'appel de la distribution (c'est-à-dire SDK.XTaskQueueDispatch()). Il est donc important que la distribution soit *appelée fréquemment*, idéalement pendant la boucle de mise à jour de votre jeu.
* Le rappel de résultat est exécuté sur le thread qui a invoqué la distribution.

## Exemples de différences entre les API natives et les wrappers managés

Les API natives et les wrappers managés présentent des différences minimes. À titre de référence, les deux exemples suivants montrent la signature et les fonctions d'appel de **XUserAddAsync** et **XblAchievementsUpdateAchievementAsync** en code managé et natif.

### Exemple XUserAddAsync

La signature native de XUserAddAsync est la suivante.

```cpp theme={null}
STDAPI XUserAddAsync(
    _In_ XUserAddOptions options,
    _Inout_ XAsyncBlock* async
    ) noexcept;

STDAPI XUserAddResult(
    _Inout_ XAsyncBlock* async,
    _Out_ XUserHandle* newUser
    ) noexcept;
```

Tandis que la signature managée de XUserAddAsync est :

```csharp theme={null}
public static void XGamingRuntime.SDK.XUserAddAsync(
    XUserAddOptions options,
    XUserAddCompleted completionRoutine
);

public delegate void XUserAddCompleted(Int32 hresult, XUserHandle userHandle);
```

Voici un exemple d'appel des fonctions de XUserAddAsync en code natif.

```cpp theme={null}
auto asyncBlock = std::make_unique<XAsyncBlock>();
ZeroMemory(asyncBlock.get(), sizeof(*asyncBlock));
asyncBlock->queue = _queue;
asyncBlock->context = this;
asyncBlock->callback = [](XAsyncBlock* ab)
{
    auto asyncBlock = std::unique_ptr<XAsyncBlock>(ab);
    XUserHandle user;
    RETURN_IF_FAILED(XUserAddResult(ab, &user));
};

if (SUCCEEDED_LOG(XUserAddAsync(
    XUserAddOptions::AddDefaultUserAllowingUI,
    asyncBlock.get())))
{
    // The call succeeded, so release the std::unique_ptr ownership of XAsyncBlock* because the callback will take over ownership.
    // If the call fails, the std::unique_ptr will keep ownership and delete the XAsyncBlock*
    asyncBlock.release();
}
```

Tandis que l'exemple managé d'appel des fonctions XUserAddAsync est :

```csharp theme={null}
Managed add user

SDK.XUserAddAsync(
    XUserAddOptions.AddDefaultUserAllowingUI,
    (hr, userHandle) =>
    {
        LOG("XUserAddAsync", hr);
        if (hr >= 0)
        {
            this.userHandle = userHandle;
            // Sign-in succeeded.
        }
        else
        {
            // Sign-in failed.
        }
    }
);
```

Si vous préférez utiliser une file d'attente personnalisée, ou si l'API n'inclut pas d'implémentation de rappel, l'exemple suivant montre comment créer un XAsyncBlock. Vous devez également garantir la distribution et l'achèvement corrects de la file d'attente. Pour plus d'informations, consultez [Vue d'ensemble de la bibliothèque XTaskQueue](/fr/build/core-features/common/async/async-libraries/async-library-xtaskqueue).

```csharp theme={null}

XAsyncBlock xAsyncBlock = new XAsyncBlock(queue, (_async) =>
{
    XUserHandle userHandle;
    int hr = SDK.XUserAddResult(_async, out userHandle);

    if (hr >= 0)
    {
        this.userHandle = userHandle;
        // Sign-in succeeded.
    }
    else
    {
        // Sign-in failed.
    }
}, IntPtr.Zero);

SDK.XUserAddAsync(XUserAddOptions.AddDefaultUserAllowingUI, xAsyncBlock);
```

### Exemple XblAchievementsUpdateAchievementAsync

La signature native de XblAchievementsUpdateAchievementAsync est la suivante.

```cpp theme={null}
STDAPI XblAchievementsUpdateAchievementAsync(
    _In_ XblContextHandle xboxLiveContext,
    _In_ uint64_t xboxUserId,
    _In_z_ const char* achievementId,
    _In_ uint32_t percentComplete,
    _In_ XAsyncBlock* async
) XBL_NOEXCEPT;
```

Tandis que la signature managée de XblAchievementsUpdateAchievementAsync est :

```csharp theme={null}
public static void XGamingRuntime.SDK.XBL.XblAchievementsUpdateAchievementAsync(
    XblContextHandle xboxLiveContext,
    UInt64 xboxUserId,
    string achievementId,
    UInt32 percentComplete,
    XblAchievementsUpdateAchievementResult completionRoutine);

public delegate void XblAchievementsUpdateAchievementResult(Int32 hresult);
```

Voici un exemple d'appel des fonctions de XblAchievementsUpdateAchievementAsync en code natif.

```cpp theme={null}
auto asyncBlock = std::make_unique<XAsyncBlock>();
asyncBlock->queue = Data()->queue;
asyncBlock->context = nullptr;
asyncBlock->callback = [](XAsyncBlock* asyncBlock)
{
    std::unique_ptr<XAsyncBlock> asyncBlockPtr{ asyncBlock }; // Take over ownership of the XAsyncBlock*
    auto result = XAsyncGetStatus(asyncBlock, false);
    if (SUCCEEDED(result))
    {
        // Achievement updated.
    }
    else if (result == HTTP_E_STATUS_NOT_MODIFIED)
    {
        // Achievement isn't modified.
    }
    else
    {
        // Achievement failed to update.
    }
};

HRESULT hr = XblAchievementsUpdateAchievementAsync(
    Data()->xboxLiveContext,
    Data()->xboxUserId,
    achievementId.c_str(),
    percentComplete,
    asyncBlock.get()
);
if (SUCCEEDED(hr))
{
    // The call succeeded, so release the std::unique_ptr ownership of XAsyncBlock* because the callback will take over ownership.
    // If the call fails, the std::unique_ptr will keep ownership and delete the XAsyn-cBlock*
    asyncBlock.release();
}
```

Tandis que l'exemple managé d'appel des fonctions XblAchievementsUpdateAchievementAsync est :

```csharp theme={null}
SDK.XBL.XblAchievementsUpdateAchievementAsync(
    xblContextHandle,
    xboxUserId,
    achievementId,
    percentComplete
    (achievementUpdateResult) => {
        LOG("XblAchievementsUpdateAchievementAsync result", achievementUpdateResult);
        if (achievementUpdateResult == 0)
        {
        	//  Achievement updated.
       	}
        else if (achievementUpdateResult == HTTP_E_STATUS_NOT_MODIFIED) //  0x80190130
        {
       		//  Achievement isn't modified.
       	}
        else
        {
       		//  Achievement failed to update.
       	}
    }
);
```

### Initialisation de l'API XBOX Services (XSAPI) en code managé

À titre de référence, voici une initialisation de [XSAPI](/fr/services/xbox-services/fundamentals/xbox-services-api/live-gs-xbl-apis) en code managé. Voici la signature XSAPI en code managé.

```csharp theme={null}
public static Int32 XGamingRuntime.SDK.XBL.XblInitialize(string scid)
```

Voici un exemple du modèle d'appel XSAPI en code managé.

```csharp theme={null}
Int32 hresult = SDK.XBL.XblInitialize(SCID);
```

## Liste des API du Microsoft Game Development Kit (GDK) dans les wrappers managés

Les API du Microsoft Game Development Kit (GDK) suivantes sont incluses dans les wrappers managés du package GDK pour Unity. Pour plus d'informations sur les API du Microsoft Game Development Kit (GDK), consultez [Référence des API système](/fr/reference/system/gc-reference-system-toc).

* [XAccessibility](/fr/reference/system/xaccessibility/xaccessibility_members)
  * XClosedCaptionGetProperties
  * XClosedCaptionSetEnabled
  * XHighContrastGetMode
  * XSpeechToTextSendString
  * XSpeechToTextSetPositionHint
  * XSpeechToTextBeginHypothesisString
  * XSpeechToTextUpdateHypothesisString
  * XSpeechToTextFinalizeHypothesisString
  * XSpeechToTextCancelHypothesisString
* [XAppCapture](/fr/reference/system/xappcapture/xappcapture_members)
  * XAppBroadcastGetStatus
  * XAppBroadcastIsAppBroadcasting
  * XAppBroadcastShowUI
  * XAppBroadcastRegisterIsAppBroadcastingChanged
  * XAppCaptureCloseLocalStream
  * XAppCaptureCloseScreenshotStream
  * XAppCaptureEnableRecord
  * XAppCaptureDisableRecord
  * XAppBroadcastUnregisterIsAppBroadcastingChanged
  * XAppCaptureMetadataAddStringEvent
  * XAppCaptureMetadataAddInt32Event
  * XAppCaptureMetadataAddDoubleEvent
  * XAppCaptureMetadataStartStringState
  * XAppCaptureMetadataStartInt32State
  * XAppCaptureMetadataStartDoubleState
  * XAppCaptureMetadataStopState
  * XAppCaptureMetadataStopAllStates
  * XAppCaptureMetadataRemainingStorageBytesAvailable
  * XAppCaptureOpenScreenshotStream
  * XAppCaptureReadScreenshotStream
  * XAppCaptureRecordDiagnosticClip
  * XAppCaptureTakeDiagnosticScreenshot
  * XAppCaptureTakeScreenshot
  * XAppCaptureRegisterMetadataPurged
  * XAppCaptureUnRegisterMetadataPurged
  * XAppCaptureReadLocalStream
  * XAppCaptureRecordTimespan
  * XAppCaptureGetVideoCaptureSettings
* [XAsync](/fr/reference/system/xasync/xasync_members)
  * XAsyncGetStatus
  * XAsyncGetResultSize
  * XAsyncCancel
  * XAsyncRun
* [XDisplay](/fr/reference/system/xdisplay/xdisplay_members)
  * XDisplayTryEnableHdrMode
  * XDisplayAcquireTimeoutDeferral
  * XDisplayCloseTimeoutDeferralHandle
* [XError](/fr/reference/system/xerror/xerror_members)
  * XErrorSetCallback
  * XErrorSetOptions
* [XGameEvent](/fr/reference/system/xgameevent/xgameevent_members)
  * XGameEventWrite
* [XGame](/fr/reference/system/xgame/xgame_members)
  * XGameGetXboxTitleId
  * XLaunchNewGame
  * XLaunchRestartOnCrash
* [XGameInvite](/fr/reference/system/xgameinvite/xgameinvite_members)
  * XGameInviteRegisterForEvent
  * XGameInviteUnregisterForEvent
* [XGameProtocol](/fr/reference/system/xgameprotocol/xgameprotocol_members)
  * XGameProtocolRegisterForActivation
  * XGameProtocolUnregisterForActivation
* [XGameRuntimeFeature](/fr/reference/system/xgameruntimefeature/xgameruntimefeature_members)
  * XGameRuntimeIsFeatureAvailable
* [XGameRuntimeInit](/fr/reference/system/xgameruntimeinit/xgameruntimeinit_members)
  * XGameRuntimeInitialize
  * XGameRuntimeUninitialize
* [XGameSave](/fr/reference/system/xgamesave/xgamesave_members)
  * XGameSaveInitializeProvider
  * XGameSaveInitializeProviderAsync
  * XGameSaveInitializeProviderResult
  * XGameSaveCloseProvider
  * XGameSaveGetRemainingQuota
  * XGameSaveGetRemainingQuotaAsync
  * XGameSaveGetRemainingQuotaResult
  * XGameSaveDeleteContainer
  * XGameSaveDeleteContainerAsync
  * XGameSaveDeleteContainerResult
  * XGameSaveCreateContainer
  * XGameSaveCloseContainer
  * XGameSaveGetContainerInfo
  * XGameSaveEnumerateContainerInfo
  * XGameSaveEnumerateContainerInfoByName
  * XGameSaveEnumerateBlobInfo
  * XGameSaveEnumerateBlobInfoByName
  * XGameSaveReadBlobData
  * XGameSaveReadBlobDataAsync
  * XGameSaveReadBlobDataResult
  * XGameSaveCreateUpdate
  * XGameSaveCloseUpdateHandle
  * XGameSaveSubmitBlobWrite
  * XGameSaveSubmitBlobDelete
  * XGameSaveSubmitUpdate
  * XGameSaveSubmitUpdateAsync
  * XGameSaveSubmitUpdateResult
* [XGameSaveFiles](/fr/reference/system/xgamesavefiles/xgamesavefiles_members)
  * XGameSaveFilesGetFolderWithUiAsync
  * XGameSaveFilesGetFolderWithUiResult
  * XGameSaveFilesGetRemainingQuota
* [XGameStreaming](/fr/reference/system/xgamestreaming/xgamestreaming_members)
  * XGameStreamingInitialize
  * XGameStreamingUninitialize
  * XGameStreamingIsStreaming
  * XGameStreamingGetClientCount
  * XGameStreamingGetClients
  * XGameStreamingGetConnectionState
  * XGameStreamingRegisterConnectionStateChanged
  * XGameStreamingUnregisterConnectionStateChanged
  * XGameStreamingHideTouchControls
  * XGameStreamingHideTouchControlsOnClient
  * XGameStreamingShowTouchControlLayout
  * XGameStreamingShowTouchControlLayoutOnClient
  * XGameStreamingRegisterClientPropertiesChanged
  * XGameStreamingUnregisterClientPropertiesChanged
  * XGameStreamingGetStreamPhysicalDimensions
  * XGameStreamingGetStreamAddedLatency
  * XGameStreamingGetServerLocationNameSize
  * XGameStreamingGetServerLocationName
  * XGameStreamingIsTouchInputEnabled
  * XGameStreamingGetLastFrameDisplayed
  * XGameStreamingUpdateTouchControlsState
  * XGameStreamingUpdateTouchControlsStateOnClient
  * XGameStreamingShowTouchControlsWithStateUpdate
  * XGameStreamingShowTouchControlsWithStateUpdateOnClient
  * XGameStreamingGetTouchBundleVersionNameSize
  * XGameStreamingGetTouchBundleVersion
  * XGameStreamingGetClientIPAddress
  * XGameStreamingGetSessionId
  * XGameStreamingGetDisplayDetails
  * XGameStreamingSetResolution
* [XGameUI](/fr/reference/system/xgameui/xgameui_members)
  * XGameUIShowAchievementsAsync
  * XGameUIShowAchievementsResult
  * XGameUIShowMessageDialogAsync
  * XGameUIShowMessageDialogResult
  * XGameUIShowErrorDialogAsync
  * XGameUIShowErrorDialogResult
  * XGameUIShowTextEntryAsync
  * XGameUIShowTextEntryResultSize
  * XGameUIShowTextEntryResult
  * XGameUITextEntryClose
  * XGameUITextEntryGetExtents
  * XGameUITextEntryOpen
  * XGameUITextEntryGetState
  * XGameUITextEntryUpdatePositionHint
  * XGameUITextEntryUpdateVisibility
  * XGameUISetNotificationPositionHint
  * XGameUIShowSendGameInviteAsync
  * XGameUIShowSendGameInviteResult
  * XGameUIShowMultiplayerActivityGameInviteAsync
  * XGameUIShowMultiplayerActivityGameInviteResult
  * XGameUIShowWebAuthenticationAsync
  * XGameUIShowWebAuthenticationResult
  * XGameUIShowWebAuthenticationWithOptionsAsync
  * XGameUIShowWebAuthenticationResultSize
  * XGameUIShowPlayerProfileCardAsync
  * XGameUIShowPlayerProfileCardResult
  * XGameUIShowPlayerPickerAsync
  * XGameUIShowPlayerPickerResultCount
  * XGameUIShowPlayerPickerResult
* [XLauncher](/fr/reference/system/xlauncher/xlauncher_members)
  * XLaunchUri
* [XNetworking](/fr/reference/networking/xnetworking/xnetworking_members)
  * XNetworkingGetConnectivityHint
  * XNetworkingQueryConfigurationSetting
  * XNetworkingQueryPreferredLocalUdpMultiplayerPort
  * XNetworkingQueryPreferredLocalUdpMultiplayerPortAsync
  * XNetworkingQueryPreferredLocalUdpMultiplayerPortAsyncResult
  * XNetworkingQuerySecurityInformationForUrlAsync
  * XNetworkingQuerySecurityInformationForUrlAsyncResultSize
  * XNetworkingQuerySecurityInformationForUrlAsyncResult
  * XNetworkingQuerySecurityInformationForUrlUtf16Async
  * XNetworkingQuerySecurityInformationForUrlUtf16AsyncResultSize
  * XNetworkingQuerySecurityInformationForUrlUtf16AsyncResult
  * XNetworkingQueryStatistics
  * XNetworkingRegisterConnectivityHintChanged
  * XNetworkingUnregisterConnectivityHintChanged
  * XNetworkingRegisterPreferredLocalUdpMultiplayerPortChanged
  * XNetworkingUnregisterPreferredLocalUdpMultiplayerPortChanged
  * XNetworkingVerifyServerCertificate
* [XPackage](/fr/reference/system/xpackage/xpackage_members)
  * XPackageGetCurrentProcessPackageIdentifier
  * XPackageIsPackagedProcess
  * XPackageGetUserLocale
  * XPackageEnumeratePackages
  * XPackageFindChunkAvailability
  * XPackageChangeChunkInstallOrder
  * XPackageInstallChunks
  * XPackageUninstallChunks
  * XPackageInstallChunksAsync
  * XPackageInstallChunksResult
  * XPackageRegisterPackageInstalled
  * XPackageUnregisterPackageInstalled
  * XPackageEnumerateFeatures
  * XPackageEnumerateChunkAvailability
  * XPackageMount
  * XPackageMountWithUiAsync
  * XPackageMountWithUiResult
  * XPackageGetMountPath
  * XPackageGetMountPathSize
  * XPackageCloseMountHandle
  * XPackageCreateInstallationMonitor
  * XPackageCloseInstallationMonitorHandle
  * XPackageGetInstallationProgress
  * XPackageUpdateInstallationMonitor
  * XPackageRegisterInstallationProgressChanged
  * XPackageUnregisterInstallationProgressChanged
  * XPackageEstimateDownloadSize
  * XPackageGetWriteStats
  * XPackageUninstallUWPInstance
  * XPackageUninstallPackage
* [XPersistentLocalStorage](/fr/reference/system/xpersistentlocalstorage/xpersistentlocalstorage_members)
  * XPersistentLocalStorageGetPathSize
  * XPersistentLocalStorageGetPath
  * XPersistentLocalStorageGetSpaceInfo
  * XPersistentLocalStoragePromptUserForSpaceAsync
  * XPersistentLocalStoragePromptUserForSpaceResult
* [XSpeechSynthesizer](/fr/reference/system/xspeechsynthesizer/xspeechsynthesizer_members)
  * XSpeechSynthesizerEnumerateInstalledVoices
  * XSpeechSynthesizerCreate
  * XSpeechSynthesizerCloseHandle
  * XSpeechSynthesizerSetDefaultVoice
  * XSpeechSynthesizerSetCustomVoice
  * XSpeechSynthesizerCreateStreamFromText
  * XSpeechSynthesizerCreateStreamFromSsml
  * XSpeechSynthesizerCloseStreamHandle
  * XSpeechSynthesizerGetStreamDataSize
  * XSpeechSynthesizerGetStreamData
* [XStore](/fr/reference/system/xstore/xstore_members)
  * XStoreCreateContext
  * XStoreCloseContextHandle
  * XStoreIsAvailabilityPurchasable
  * XStoreAcquireLicenseForPackageAsync
  * XStoreAcquireLicenseForPackageResult
  * XStoreCanAcquireLicenseForPackageAsync
  * XStoreCanAcquireLicenseForPackageResult
  * XStoreCanAcquireLicenseForStoreIdAsync
  * XStoreCanAcquireLicenseForStoreIdResult
  * XStoreCloseLicenseHandle
  * XStoreIsLicenseValid
  * XStoreQueryAddOnLicensesAsync
  * XStoreQueryAddOnLicensesResultCount
  * XStoreQueryAddOnLicensesResult
  * XStoreQueryGameLicenseAsync
  * XStoreQueryGameLicenseResult
  * XStoreQueryLicenseTokenAsync
  * XStoreQueryLicenseTokenResultSize
  * XStoreQueryLicenseTokenResult
  * XStoreRegisterGameLicenseChanged
  * XStoreUnregisterGameLicenseChanged
  * XStoreRegisterPackageLicenseLost
  * XStoreUnregisterGameLicenseChanged
  * XStoreUnregisterPackageLicenseLost
  * XStoreAcquireLicenseForDurablesAsync
  * XStoreQueryGameAndDlcPackageUpdatesAsync
  * XStoreQueryGameAndDlcPackageUpdatesResultCount
  * XStoreQueryGameAndDlcPackageUpdatesResult
  * XStoreDownloadAndInstallPackagesAsync
  * XStoreDownloadAndInstallPackagesResultCount
  * XStoreDownloadAndInstallPackagesResult
  * XStoreDownloadAndInstallPackageUpdatesAsync
  * XStoreDownloadAndInstallPackageUpdatesResult
  * XStoreDownloadPackageUpdatesAsync
  * XStoreDownloadPackageUpdatesResult
  * XStoreQueryPackageIdentifier
  * XStoreShowRedeemTokenUIAsync
  * XStoreShowRedeemTokenUIResult
  * XStoreShowRateAndReviewUIAsync
  * XStoreShowRateAndReviewUIResult
  * XStoreShowPurchaseUIAsync
  * XStoreShowPurchaseUIResult
  * XStoreQueryConsumableBalanceRemainingAsync
  * XStoreQueryConsumableBalanceRemainingResult
  * XStoreReportConsumableFulfillmentAsync
  * XStoreReportConsumableFulfillmentResult
  * XStoreGetUserCollectionsIdAsync
  * XStoreGetUserCollectionsIdResultSize
  * XStoreGetUserCollectionsIdResult
  * XStoreGetUserPurchaseIdAsync
  * XStoreGetUserPurchaseIdResultSize
  * XStoreGetUserPurchaseIdResult
  * XStoreQueryAssociatedProductsAsync
  * XStoreQueryAssociatedProductsResult
  * XStoreQueryEntitledProductsAsync
  * XStoreQueryEntitledProductsResult
  * XStoreQueryProductForCurrentGameAsync
  * XStoreQueryProductForCurrentGameResult
  * XStoreQueryProductForPackageAsync
  * XStoreQueryProductForPackageResult
  * XStoreQueryProductsAsync
  * XStoreQueryProductsResult
  * XStoreProductsQueryNextPageAsync
  * XStoreCloseProductsQueryHandle
  * XStoreAcquireLicenseForDurablesResult
  * XStoreEnumerateProductsQuery
  * XStoreProductsQueryHasMorePages
  * XStoreProductsQueryNextPageResult
  * XStoreShowAssociatedProductsUIAsync
  * XStoreShowAssociatedProductsUIResult
  * XStoreShowProductPageUIAsync
  * XStoreShowProductPageUIResult
* [XSystem](/fr/reference/system/xsystem/xsystem_members)
  * XSystemGetAnalyticsInfo
  * XSystemGetAppSpecificDeviceId
  * XSystemGetConsoleId
  * XSystemGetDeviceType
  * XSystemGetXboxLiveSandboxId
  * XSystemGetRuntimeInfo
  * XSystemIsHandleValid
  * XSystemHandleTrack
* [XTaskQueue](/fr/reference/system/xtaskqueue/xtaskqueue_members)
  * XTaskQueueCloseHandle
  * XTaskQueueCreate
  * XTaskQueueCreateComposite
  * XTaskQueueDispatch
  * XTaskQueueDuplicateHandle
  * XTaskQueueGetCurrentProcessTaskQueue
  * XTaskQueueGetPort
  * XTaskQueueRegisterMonitor
  * XTaskQueueRegisterWaiter
  * XTaskQueueSetCurrentProcessTaskQueue
  * XTaskQueueSubmitCallback
  * XTaskQueueSubmitDelayedCallback
  * XTaskQueueTerminate
  * XTaskQueueUnregisterMonitor
  * XTaskQueueUnregisterWaiter
* [XThread](/fr/reference/system/xthread/xthread_members)
  * XThreadIsTimeSensitive
  * XThreadSetTimeSensitive
  * XThreadAssertNotTimeSensitive
* [XUser](/fr/reference/system/xuser/xuser_members)
  * XUserDuplicateHandle
  * XUserCloseHandle
  * XUserCompare
  * XUserGetMaxUsers
  * XUserAddAsync
  * XUserAddResult
  * XUserAddByIdWithUiAsync
  * XUserAddByIdWithUiResult
  * XUserGetId
  * XUserFindUserById
  * XUserGetLocalId
  * XUserFindUserByLocalId
  * XUserGetIsGuest
  * XUserGetState
  * XUserGetGamertag
  * XUserGetGamerPictureAsync
  * XUserGetAgeGroup
  * XUserCheckPrivilege
  * XUserResolvePrivilegeWithUiAsync
  * XUserResolvePrivilegeWithUiResult
  * XUserGetTokenAndSignatureUtf16Async
  * XUserResolveIssueWithUiUtf16Async
  * XUserResolveIssueWithUiUtf16Result
  * XUserRegisterForChangeEvent
  * XUserUnregisterForChangeEvent
  * XUserCloseSignOutDeferralHandle
  * XUserFindControllerForUserWithUiAsync
  * XUserFindControllerForUserWithUiResult
  * XUserFindForDevice
  * XUserGetDefaultAudioEndpointUtf16
  * XUserGetGamerPictureResultSize
  * XUserGetGamerPictureResult
  * XUserGetSignOutDeferral
  * XUserGetTokenAndSignatureAsync
  * XUserGetTokenAndSignatureResultSize
  * XUserGetTokenAndSignatureResult
  * XUserGetTokenAndSignatureUtf16ResultSize
  * XUserGetTokenAndSignatureUtf16Result
  * XUserIsStoreUser
  * XUserRegisterForDefaultAudioEndpointUtf16Changed
  * XUserRegisterForDeviceAssociationChanged
  * XUserResolveIssueWithUiAsync
  * XUserResolveIssueWithUiResult
  * XUserUnregisterForDefaultAudioEndpointUtf16Changed
  * XUserUnregisterForDeviceAssociationChanged

## Liste des API des XBOX services dans les wrappers managés

Les API des XBOX services suivantes sont incluses dans les wrappers managés du package GDK pour Unity. Pour plus d'informations sur les API des XBOX services, consultez [Référence des API XBOX Live](/fr/reference/live/gc-reference-live-toc).

* [XblContext](/fr/reference/live/xsapi-c/xbox_live_context_c/xbox_live_context_c_members)
* [XblAchievements](/fr/reference/live/xsapi-c/achievements_c/achievements_c_members)
* [XblEvents](/fr/reference/live/xsapi-c/events_c/events_c_members)
* [XblLeaderboard](/fr/reference/live/xsapi-c/leaderboard_c/leaderboard_c_members)
* [XblPresence](/fr/reference/live/xsapi-c/presence_c/presence_c_members)
* [XblPrivacy](/fr/reference/live/xsapi-c/privacy_c/privacy_c_members)
* [XblSocialManager](/fr/reference/live/xsapi-c/social_manager_c/social_manager_c_members)
* [XblUserStatistics](/fr/reference/live/xsapi-c/user_statistics_c/user_statistics_c_members)
* [XblHttpCall](/fr/reference/live/xsapi-c/http_call_c/http_call_c_members)
* [XblGetErrorCondition](/fr/reference/live/xsapi-c/errors_c/errors_c_members)
* [XblMultiplayer](/fr/reference/live/xsapi-c/multiplayer_c/multiplayer_c_members)
* [XblMultiplayerManager](/fr/reference/live/xsapi-c/multiplayer_manager_c/multiplayer_manager_c_members)
* [XblMultiplayerActivity](/fr/reference/live/xsapi-c/multiplayer_activity_c/multiplayer_activity_c_members)
* [XblMatchmaking](/fr/reference/live/xsapi-c/matchmaking_c/matchmaking_c_members)
* [XblProfile](/fr/reference/live/xsapi-c/profile_c/profile_c_members)
* [XblRealTimeActivity](/fr/reference/live/xsapi-c/real_time_activity_c/real_time_activity_c_members)
* [XblTitleManagedStats](/fr/reference/live/xsapi-c/title_managed_statistics_c/title_managed_statistics_c_members)
* [XblSocial](/fr/reference/live/xsapi-c/social_c/social_c_members)
* [XblTitleStorage](/fr/reference/live/xsapi-c/title_storage_c/title_storage_c_members)
* [XblUserStatics](/fr/reference/live/xsapi-c/user_statistics_c/user_statistics_c_members)

## Documentation de référence des API

* [XStore (contenu de l'API)](/fr/reference/system/xstore/xstore_members)
* [XPackage (contenu de l'API)](/fr/reference/system/xpackage/xpackage_members)

## Voir aussi

[Bien démarrer avec Unity pour le développement PC](/fr/build/gdk-and-engines/unity/unity)


## Related topics

- [Vue d'ensemble d'Unity](/fr/paths/unity/overview.md)
- [Aperçu d'Unity](/fr-CA/paths/unity/overview.md)
- [Répertoire des rubriques NDA : liens actifs vers Microsoft Learn](/fr/nda/nda-topic-directory.md)
- [Glossaire GDK des termes et acronymes](/fr/home/glossary.md)
- [Guides de portage vers le GDK XBOX](/fr/home/build-first-title/porting-guides.md)
