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

# XUserDeviceAssociationChange

> XUserDeviceAssociationChange

# XUserDeviceAssociationChange

指定裝置關聯變更時的舊裝置關聯和新裝置關聯。

## 語法

```cpp theme={null}
typedef struct XUserDeviceAssociationChange {  
    APP_LOCAL_DEVICE_ID deviceId;  
    XUserLocalId oldUser;  
    XUserLocalId newUser;  
} XUserDeviceAssociationChange  
```

### 成員

*deviceId*\
類型：[APP\_LOCAL\_DEVICE\_ID](/zh-TW/reference/system/xuser/structs/app_local_device_id)

使用者關聯發生變更之裝置的 ID。

*oldUser*\
類型：[XUserLocalId](/zh-TW/reference/system/xuser/structs/xuserlocalid)

與裝置相關聯的舊使用者 ID。

*newUser*\
類型：[XUserLocalId](/zh-TW/reference/system/xuser/structs/xuserlocalid)\
\
與裝置相關聯的新使用者 ID。

## 備註

XUserDeviceAssociationChange 的所有引數都可以是「null」：

* 如果 deviceId 等於 **XUserNullDeviceId**，則使用者變更會套用至所有裝置，其中所有裝置都與已登入的使用者相關聯。
* 如果 oldUser 等於 **XUserNullUserLocalId**，則裝置與使用者的關聯是新的。
* 如果 newUser 等於 **XUserNullUserLocalId**，則現有的裝置與使用者關聯會遺失。

<Note>*newUser* 只能參考已透過呼叫 [XUserAddAsync](/zh-TW/reference/system/xuser/functions/xuseraddasync) 新增至遊戲的使用者。如果使用系統選擇器將輸入裝置與遊戲不認識的使用者配對，newUser 將會等於 **XUserNullUserLocalId**。如需詳細資訊，請參閱[使用者與輸入裝置](/zh-TW/build/core-features/common/user/users-input-devices)。</Note>

這些成員應視為原始位元組結構，可以使用 memcmp 或對等的方法進行比較。例如：

```cpp theme={null}
XUserDeviceAssociationChange *change; // incoming argument from callback

if(memcmp(&change->deviceId, &XUserNullDeviceId, sizeof(APP_LOCAL_DEVICE_ID) == 0))
{
}

if(memcmp(&change->newUser, &XUserNullUserLocalId, sizeof(XUserLocalId) == 0))
{
}
```

[XUserDeviceAssociationChangedCallback](/zh-TW/reference/system/xuser/functions/xuserdeviceassociationchangedcallback) 回呼函式會使用 XUserDeviceAssociationChange 結構的指標。

回呼註冊時，回呼函式會將內容傳遞給 [XUserRegisterForDeviceAssociationChanged](/zh-TW/reference/system/xuser/functions/xuserregisterfordeviceassociationchanged) 函式。

[XUserRegisterForDeviceAssociationChanged](/zh-TW/reference/system/xuser/functions/xuserregisterfordeviceassociationchanged) 函式會註冊使用者裝置關聯變更事件的回呼。

## 需求

**標頭：** XUser.h

**支援的平台：** Windows、XBOX One 系列主機和 XBOX Series 主機

## 另請參閱

[XUser](/zh-TW/reference/system/xuser/xuser_members)

[XUserDeviceAssociationChangedCallback](/zh-TW/reference/system/xuser/functions/xuserdeviceassociationchangedcallback)

[XUserRegisterForDeviceAssociationChanged](/zh-TW/reference/system/xuser/functions/xuserregisterfordeviceassociationchanged)


## Related topics

- [XUserDeviceAssociationChange](/reference/system/xuser/structs/xuserdeviceassociationchange.md)
- [XUserDeviceAssociationChangedCallback](/reference/system/xuser/functions/xuserdeviceassociationchangedcallback.md)
