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

# XUser

> XUser

# XUser

XUser API에 대한 참조 자료입니다.

## 함수

| 함수                                                                                                                                         | 설명                                                                                                                                                                                                                            |
| ------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [XUserAddAsync](/reference/system/xuser/functions/xuseraddasync)                                                                           | 게임 세션에 사용자를 비동기적으로 추가합니다.                                                                                                                                                                                                     |
| [XUserAddByIdWithUiAsync](/reference/system/xuser/functions/xuseraddbyidwithuiasync)                                                       | 게임 초대의 XUID를 기반으로 게임 세션에 사용자를 비동기적으로 추가합니다. 이 함수는 게임 초대에 대한 응답으로만 사용해야 합니다.                                                                                                                                                   |
| [XUserAddByIdWithUiResult](/reference/system/xuser/functions/xuseraddbyidwithuiresult)                                                     | XUserAddByIdWithUiAsync가 생성한 사용자에 대한 핸들을 검색합니다. 이 함수는 게임 초대에 대한 응답으로만 사용해야 합니다.                                                                                                                                               |
| [XUserAddResult](/reference/system/xuser/functions/xuseraddresult)                                                                         | XUserAddAsync가 생성한 사용자에 대한 핸들을 검색합니다.                                                                                                                                                                                         |
| [XUserChangeEventCallback](/reference/system/xuser/functions/xuserchangeeventcallback)                                                     | 애플리케이션이 사용자 변경 이벤트에 대해 정의하는 콜백입니다.                                                                                                                                                                                            |
| [XUserCheckPrivilege](/reference/system/xuser/functions/xusercheckprivilege)                                                               | 사용자가 특정 권한을 가지고 있는지 확인합니다.                                                                                                                                                                                                    |
| [XUserCloseHandle](/reference/system/xuser/functions/xuserclosehandle)                                                                     | 특정 사용자 핸들을 닫습니다.                                                                                                                                                                                                              |
| [XUserCloseSignOutDeferralHandle](/reference/system/xuser/functions/xuserclosesignoutdeferralhandle)                                       | 특정 사용자 로그아웃 지연 핸들을 닫습니다.                                                                                                                                                                                                      |
| [XUserCompare](/reference/system/xuser/functions/xusercompare)                                                                             | 두 사용자 핸들의 동일성을 비교합니다.                                                                                                                                                                                                         |
| [XUserDefaultAudioEndpointUtf16ChangedCallback](/reference/system/xuser/functions/xuserdefaultaudioendpointutf16changedcallback)           | 사용자의 기본 오디오 엔드포인트가 변경될 때 애플리케이션이 정의하고 호출하는 콜백입니다.                                                                                                                                                                             |
| [XUserDeviceAssociationChangedCallback](/reference/system/xuser/functions/xuserdeviceassociationchangedcallback)                           | 사용자-디바이스 연결이 변경될 때 호출되는 콜백입니다.                                                                                                                                                                                                |
| [XUserDuplicateHandle](/reference/system/xuser/functions/xuserduplicatehandle)                                                             | 사용자 핸들을 복제합니다.                                                                                                                                                                                                                |
| [XUserFindControllerForUserWithUiAsync](/reference/system/xuser/functions/xuserfindcontrollerforuserwithuiasync)                           | 사용자가 사용할 컨트롤러를 켜고 식별하도록 안내하는 대화 상자를 표시합니다.                                                                                                                                                                                    |
| [XUserFindControllerForUserWithUiResult](/reference/system/xuser/functions/xuserfindcontrollerforuserwithuiresult)                         | 사용자가 사용하도록 선택한 애플리케이션 로컬 디바이스 ID(APP\_LOCAL\_DEVICE\_ID)를 검색합니다.                                                                                                                                                              |
| [XUserFindForDevice](/reference/system/xuser/functions/xuserfindfordevice)                                                                 | 특정 디바이스 ID의 사용자 ID를 검색합니다.                                                                                                                                                                                                    |
| [XUserFindUserById](/reference/system/xuser/functions/xuserfinduserbyid)                                                                   | 로컬 사용자의 XBOX 사용자 ID(XUID)를 검색합니다.                                                                                                                                                                                             |
| [XUserFindUserByLocalId](/reference/system/xuser/functions/xuserfinduserbylocalid)                                                         | 특정 로컬 사용자 ID의 사용자에 대한 핸들을 검색합니다.                                                                                                                                                                                              |
| [XUserGetAgeGroup](/reference/system/xuser/functions/xusergetagegroup)                                                                     | 사용자의 연령 그룹을 반환합니다.                                                                                                                                                                                                            |
| [XUserGetDefaultAudioEndpointUtf16](/reference/system/xuser/functions/xusergetdefaultaudioendpointutf16)                                   | 특정 사용자의 기본 오디오 엔드포인트를 검색합니다.                                                                                                                                                                                                  |
| [XUserGetGamerPictureAsync](/reference/system/xuser/functions/xusergetgamerpictureasync)                                                   | 특정 사용자의 게이머 사진을 비동기적으로 검색합니다.                                                                                                                                                                                                 |
| [XUserGetGamerPictureResult](/reference/system/xuser/functions/xusergetgamerpictureresult)                                                 | XUserGetGamerPictureAsync 호출 결과를 검색합니다.                                                                                                                                                                                       |
| [XUserGetGamerPictureResultSize](/reference/system/xuser/functions/xusergetgamerpictureresultsize)                                         | ]XUserGetGamerPictureAsync]\(/reference/system/xuser/functions/xusergetgamerpictureasync)가 반환하는 게이머 사진을 검색하기 위해 [XUserGetGamerPictureResult](/reference/system/xuser/functions/xusergetgamerpictureresult)에 필요한 버퍼 크기를 반환합니다. |
| [XUserGetGamertag](/reference/system/xuser/functions/xusergetgamertag)                                                                     | 특정 사용자의 게이머태그를 검색합니다.                                                                                                                                                                                                         |
| [XUserGetId](/reference/system/xuser/functions/xusergetid)                                                                                 | 특정 사용자의 사용자 ID를 가져옵니다.                                                                                                                                                                                                        |
| [XUserGetIsGuest](/reference/system/xuser/functions/xusergetisguest)                                                                       | 사용자가 게스트인지를 나타내는 부울을 반환합니다.                                                                                                                                                                                                   |
| [XUserGetLocalId](/reference/system/xuser/functions/xusergetlocalid)                                                                       | 사용자의 고유한 게임 세션 ID를 검색합니다.                                                                                                                                                                                                     |
| [XUserGetMaxUsers](/reference/system/xuser/functions/xusergetmaxusers)                                                                     | 현재 플랫폼에서 게임 세션이 허용하는 최대 사용자 수를 검색합니다.                                                                                                                                                                                         |
| [XUserGetMsaTokenSilentlyAsync](/reference/system/xuser/functions/xusergetmsatokensilentlyasync)                                           | 이 함수는 이제 사용되지 않습니다.                                                                                                                                                                                                           |
| [XUserGetMsaTokenSilentlyResult](/reference/system/xuser/functions/xusergetmsatokensilentlyresult)                                         | 이 함수는 이제 사용되지 않습니다.                                                                                                                                                                                                           |
| [XUserGetMsaTokenSilentlyResultSize](/reference/system/xuser/functions/xusergetmsatokensilentlyresultsize)                                 | 이 함수는 이제 사용되지 않습니다.                                                                                                                                                                                                           |
| [XUserGetSignOutDeferral](/reference/system/xuser/functions/xusergetsignoutdeferral)                                                       | 로그아웃 지연에 대한 핸들을 검색합니다.                                                                                                                                                                                                        |
| [XUserGetState](/reference/system/xuser/functions/xusergetstate)                                                                           | 사용자의 상태를 검색합니다.                                                                                                                                                                                                               |
| [XUserGetTokenAndSignatureAsync](/reference/system/xuser/functions/xusergettokenandsignatureasync)                                         | 웹 요청에 대한 xtoken과 서명을 비동기적으로 검색합니다.                                                                                                                                                                                            |
| [XUserGetTokenAndSignatureResult](/reference/system/xuser/functions/xusergettokenandsignatureresult)                                       | XUserGetTokenAndSignatureAsync 호출 결과를 가져옵니다.                                                                                                                                                                                  |
| [XUserGetTokenAndSignatureResultSize](/reference/system/xuser/functions/xusergettokenandsignatureresultsize)                               | XUserGetTokenAndSignatureAsync 호출 결과를 저장할 버퍼 크기를 가져옵니다.                                                                                                                                                                       |
| [XUserGetTokenAndSignatureUtf16Async](/reference/system/xuser/functions/xusergettokenandsignatureutf16async)                               | 웹 요청에 대한 유니코드 xtoken과 서명을 비동기적으로 검색합니다.                                                                                                                                                                                       |
| [XUserGetTokenAndSignatureUtf16Result](/reference/system/xuser/functions/xusergettokenandsignatureutf16result)                             | XUserGetTokenAndSignatureUtf16Async 호출 결과를 가져옵니다.                                                                                                                                                                             |
| [XUserGetTokenAndSignatureUtf16ResultSize](/reference/system/xuser/functions/xusergettokenandsignatureutf16resultsize)                     | XUserGetTokenAndSignatureUtf16Async 호출 결과를 저장할 버퍼 크기를 가져옵니다.                                                                                                                                                                  |
| [XUserIsStoreUser](/reference/system/xuser/functions/xuserisstoreuser)                                                                     | XUser MSA가 Microsoft Store에 로그인된 MSA와 동일한지 확인합니다.                                                                                                                                                                             |
| [XUserRegisterForChangeEvent](/reference/system/xuser/functions/xuserregisterforchangeevent)                                               | 사용자 변경 이벤트에 대한 콜백을 등록합니다.                                                                                                                                                                                                     |
| [XUserRegisterForDefaultAudioEndpointUtf16Changed](/reference/system/xuser/functions/xuserregisterfordefaultaudioendpointutf16changed)     | 기본 오디오 엔드포인트가 변경될 때 애플리케이션이 정의하고 호출하는 콜백을 등록합니다.                                                                                                                                                                              |
| [XUserRegisterForDeviceAssociationChanged](/reference/system/xuser/functions/xuserregisterfordeviceassociationchanged)                     | 사용자 디바이스 연결 변경 이벤트에 대한 콜백을 등록합니다.                                                                                                                                                                                             |
| [XUserResolveIssueWithUiAsync](/reference/system/xuser/functions/xuserresolveissuewithuiasync)                                             | 비유니코드 URL로 토큰 문제를 해결하기 위한 시스템 사용자 인터페이스를 표시합니다.                                                                                                                                                                               |
| [XUserResolveIssueWithUiResult](/reference/system/xuser/functions/xuserresolveissuewithuiresult)                                           | XUserResolveIssueWithUiAsync 호출의 결과를 검색합니다.                                                                                                                                                                                   |
| [XUserResolveIssueWithUiUtf16Async](/reference/system/xuser/functions/xuserresolveissuewithuiutf16async)                                   | 특정 유니코드 URL로 토큰 문제를 해결하기 위한 시스템 사용자 인터페이스를 표시합니다.                                                                                                                                                                             |
| [XUserResolveIssueWithUiUtf16Result](/reference/system/xuser/functions/xuserresolveissuewithuiutf16result)                                 | XUserResolveIssueWithUiUtf16Async 호출의 결과를 검색합니다.                                                                                                                                                                              |
| [XUserResolvePrivilegeWithUiAsync](/reference/system/xuser/functions/xuserresolveprivilegewithuiasync)                                     | 필요한 사용자 권한을 해결하는 사용자 인터페이스를 표시합니다.                                                                                                                                                                                            |
| [XUserResolvePrivilegeWithUiResult](/reference/system/xuser/functions/xuserresolveprivilegewithuiresult)                                   | XUserResolvePrivilegeWithUiAsync 호출의 결과를 검색합니다.                                                                                                                                                                               |
| [XUserUnregisterForChangeEvent](/reference/system/xuser/functions/xuserunregisterforchangeevent)                                           | 이전에 등록된 사용자 변경 콜백의 등록을 취소합니다.                                                                                                                                                                                                 |
| [XUserUnregisterForDefaultAudioEndpointUtf16Changed](/reference/system/xuser/functions/xuserunregisterfordefaultaudioendpointutf16changed) | 이전에 등록된 기본 오디오 엔드포인트 변경 콜백의 등록을 취소합니다.                                                                                                                                                                                        |
| [XUserUnregisterForDeviceAssociationChanged](/reference/system/xuser/functions/xuserunregisterfordeviceassociationchanged)                 | 이전에 등록된 사용자 디바이스 연결 변경 콜백의 등록을 취소합니다.                                                                                                                                                                                         |
| [xUserPlatformRemoteConnectSetEventHandlers](/reference/system/xuser/functions/xuserplatformremoteconnectseteventhandlers)                 | 원격 연결 이벤트 처리기를 설정합니다.                                                                                                                                                                                                         |
| [XUserPlatformRemoteConnectCancelPrompt](/reference/system/xuser/functions/xuserplatformremoteconnectcancelprompt)                         | 원격 연결 프롬프트가 사용자에 의해 닫혔음을 XUser에 알립니다.                                                                                                                                                                                         |
| [XUserPlatformRemoteConnectShowPromptEventHandler](/reference/system/xuser/functions/xuserplatformremoteconnectshowprompteventhandler)     | 원격 연결 인증 이벤트 처리기의 프롬프트를 표시합니다.                                                                                                                                                                                                |
| [XUserPlatformRemoteConnectClosePromptEventHandler](/reference/system/xuser/functions/xuserplatformremoteconnectcloseprompteventhandler)   | 원격 인증 이벤트 처리기의 프롬프트를 닫습니다.                                                                                                                                                                                                    |
| [XUserPlatformSpopPromptEventHandler](/reference/system/xuser/functions/xuserplatformspopprompteventhandler)                               | SPOP 작업 이벤트 처리기의 프롬프트를 표시합니다.                                                                                                                                                                                                 |
| [XUserPlatformSpopPromptSetEventHandlers](/reference/system/xuser/functions/xuserplatformspoppromptseteventhandlers)                       | SPOP 프롬프트 이벤트 처리기를 설정합니다.                                                                                                                                                                                                     |
| [XUserPlatformSpopPromptClearEventHandler](/reference/system/xuser/functions/xuserplatformspoppromptcleareventhandler)                     | XUser에서 SPOP 프롬프트 이벤트 처리기를 지웁니다.                                                                                                                                                                                              |
| [XUserPlatformSpopPromptComplete](/reference/system/xuser/functions/xuserplatformspoppromptcomplete)                                       | 사용자가 SPOP 프롬프트와의 상호작용을 마쳤음을 XUser에 알립니다.                                                                                                                                                                                      |

## 구조체

| 구조체                                                                                                                  | 설명                                           |
| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------- |
| [APP\_LOCAL\_DEVICE\_ID](/reference/system/xuser/structs/app_local_device_id)                                        | 로컬 입력 디바이스의 루트 ID를 지정합니다.                    |
| [XUserDeviceAssociationChange](/reference/system/xuser/structs/xuserdeviceassociationchange)                         | 디바이스 연결이 변경될 때 이전 디바이스 연결과 새 디바이스 연결을 지정합니다. |
| [XUserGetTokenAndSignatureData](/reference/system/xuser/structs/xusergettokenandsignaturedata)                       | 웹 요청에 대해 검색된 xtoken과 서명을 지정합니다.              |
| [XUserGetTokenAndSignatureHttpHeader](/reference/system/xuser/structs/xusergettokenandsignaturehttpheader)           | 웹 요청에 대한 HTTP 헤더를 지정합니다.                     |
| [XUserGetTokenAndSignatureUtf16Data](/reference/system/xuser/structs/xusergettokenandsignatureutf16data)             | 웹 요청에 대한 유니코드 xtoken과 서명을 포함합니다.             |
| [XUserGetTokenAndSignatureUtf16HttpHeader](/reference/system/xuser/structs/xusergettokenandsignatureutf16httpheader) | 웹 요청에 대한 유니코드 HTTP 헤더를 포함합니다.                |
| [XUserLocalId](/reference/system/xuser/structs/xuserlocalid)                                                         | 사용자의 게임 세션 ID를 지정합니다.                        |
| [XUserPlatformRemoteConnectEventHandlers](/reference/system/xuser/structs/xuserplatformremoteconnecteventhandlers)   | 원격 연결 이벤트 처리기를 캡슐화합니다.                       |

## 열거형

| 열거형                                                                                                | 설명                                          |
| -------------------------------------------------------------------------------------------------- | ------------------------------------------- |
| [XUserAddOptions](/reference/system/xuser/enums/xuseraddoptions)                                   | 사용자 추가 옵션을 지정합니다.                           |
| [XUserAgeGroup](/reference/system/xuser/enums/xuseragegroup)                                       | 사용자의 연령 그룹을 지정합니다.                          |
| [XUserChangeEvent](/reference/system/xuser/enums/xuserchangeevent)                                 | 사용자 변경 이벤트의 유형을 지정합니다.                      |
| [XUserDefaultAudioEndpointKind](/reference/system/xuser/enums/xuserdefaultaudioendpointkind)       | 사용자의 기본 오디오 엔드포인트가 오디오를 렌더링하는지 캡처하는지 지정합니다. |
| [XUserGamerPictureSize](/reference/system/xuser/enums/xusergamerpicturesize)                       | 게이머 사진의 픽셀 크기를 지정합니다.                       |
| [XUserGamertagComponent](/reference/system/xuser/enums/xusergamertagcomponent)                     | 가져올 게이머태그의 유형(또는 구성 요소)을 지정합니다.             |
| [XUserGetMsaTokenSilentlyOptions](/reference/system/xuser/enums/xusergetmsatokensilentlyoptions)   | XUserGetMsaTokenSilentlyOptions의 옵션입니다.     |
| [XUserGetTokenAndSignatureOptions](/reference/system/xuser/enums/xusergettokenandsignatureoptions) | GetUserTokenAndSignatureAsync의 옵션입니다.       |
| [XUserPrivilege](/reference/system/xuser/enums/xuserprivilege)                                     | 사용자의 권한을 지정합니다.                             |
| [XUserPrivilegeDenyReason](/reference/system/xuser/enums/xuserprivilegedenyreason)                 | 사용자가 권한을 얻지 못한 이유를 지정합니다.                   |
| [XUserPrivilegeOptions](/reference/system/xuser/enums/xuserprivilegeoptions)                       | 사용자 권한 옵션을 지정합니다.                           |
| [XUserState](/reference/system/xuser/enums/xuserstate)                                             | 사용자의 현재 상태를 지정합니다.                          |
| [XUserPlatformOperationResult](/reference/system/xuser/enums/XUserPlatformOperationResult)         | 클라이언트 작업의 결과를 정의하는 열거형입니다.                  |
| [XUserPlatformSpopOperationResult](/reference/system/xuser/enums/xuserplatformspopoperationresult) | 클라이언트 작업의 결과를 정의하는 열거형입니다.                  |

## 개념 문서

* [Asynchronous programming design goals and improvements](/build/core-features/common/async/async-whitepaper)
* [WinHTTP overview](/build/console-features/networking/web-requests/intro-winhttp)
* [Web requests (contents)](/build/console-features/networking/web-requests/web-requests-toc)
* [Time-sensitive threads](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/console-dev/overviews/threads/time-sensitive-threads)
* [Using C# wrappers for GDK APIs in your Unity project](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/pc-dev/tutorials/get-started-with-unity-pc/features/gdk-unity-api-wrappers)

## 함께 보기

[System API reference](/reference/system/gc-reference-system-toc)

## 오류 코드

XUser API에서 다음과 같은 오류 코드를 반환할 수 있습니다. 전체 목록은 [Error codes](/reference/errorcodes)를 참조하십시오.

| 코드                                                | 값          | 설명                                                                             |
| ------------------------------------------------- | ---------- | ------------------------------------------------------------------------------ |
| E\_GAMEUSER\_MAX\_USERS\_ADDED                    | 0x89245100 | 최대 사용자 수에 도달했기 때문에 이 사용자를 추가할 수 없습니다.                                          |
| E\_GAMEUSER\_SIGNED\_OUT                          | 0x89245101 | 사용자가 로그아웃되어 있어 작업을 수행할 수 없습니다.                                                 |
| E\_GAMEUSER\_RESOLVE\_USER\_ISSUE\_REQUIRED       | 0x89245102 | 이 사용자의 문제를 해결하려면 UI가 필요합니다.                                                    |
| E\_GAMEUSER\_DEFERRAL\_NOT\_AVAILABLE             | 0x89245103 | 지연을 요청하기에 적절한 시간이 아닙니다.                                                        |
| E\_GAMEUSER\_USER\_NOT\_FOUND                     | 0x89245104 | ID와 일치하는 사용자를 찾을 수 없습니다.                                                       |
| E\_GAMEUSER\_NO\_TOKEN\_REQUIRED                  | 0x89245105 | 이 호출에는 토큰이 필요하지 않습니다.                                                          |
| E\_GAMEUSER\_NO\_DEFAULT\_USER                    | 0x89245106 | 현재 기본 사용자가 없습니다. 이 오류가 발생하면 AddDefaultUserSilently 없이 XUserAddAsync를 다시 호출합니다. |
| E\_GAMEUSER\_FAILED\_TO\_RESOLVE                  | 0x89245107 | 지정된 권한을 해결하지 못했습니다.                                                            |
| E\_GAMEUSER\_NO\_TITLE\_ID                        | 0x89245108 | XBOX Live TitleId를 구성해야 합니다.                                                   |
| E\_GAMEUSER\_UNKNOWN\_GAME\_IDENTITY              | 0x89245109 | 게임 ID를 인식할 수 없습니다. MSAAppId 및 TitleId가 게임과 연결된 것과 일치하지 않습니다.                   |
| E\_GAMEUSER\_NO\_PACKAGE\_IDENTITY                | 0x89245110 | 패키지 ID를 구성해야 합니다.                                                              |
| E\_GAMEUSER\_FAILED\_TO\_GET\_TOKEN               | 0x89245111 | 토큰 요청이 실패했습니다.                                                                 |
| E\_GAMEUSER\_INVALID\_APP\_CONFIGURATION          | 0x89245112 | 게임 구성의 MSAAppId가 잘못되었거나 인증 스택에 구성되어 있지 않습니다.                                   |
| E\_GAMEUSER\_MALFORMED\_MSAAPPID                  | 0x89245113 | 게임 구성의 MSAAppId가 예상 형식(16자 문자열 또는 GUID)과 일치하지 않습니다.                            |
| E\_GAMEUSER\_INCONSISTENT\_MSAAPPID\_AND\_TITLEID | 0x89245114 | 게임 구성의 MSAAppId 및 TitleId가 게임과 연결된 것과 일치하지 않습니다.                               |
