Skip to main content

XGameStreamingRegisterClientPropertiesChanged

Registers a callback to be invoked when any streaming client device’s properties change.
Upon registration, the callback will be invoked for the client device’s current client properties.

Syntax

Parameters

client   _In_
Type: XGameStreamingClientId
ID of the game streaming client that you are registering to get callbacks for. queue   _In_opt_
Type: XTaskQueueHandle
Handle to the asynchronous queue to put the change callback on. context   _In_opt_
Type: void*
An optional pointer to a context that will be passed to the callback function. callback   _In_
Type: XGameStreamingClientPropertiesChangedCallback*
The callback function that will be invoked when the properties of the client change. token   _Out_
Type: XTaskQueueRegistrationToken*
A pointer to the registration token which can be used to unregister from the event.

Return value

Type: HRESULT Returns S_OK if successful; otherwise, returns an error code.

Potential Errors

For a list of error codes, see Error Codes.

Remarks

This function isn’t safe to call on a time-sensitive thread. For more information, see Time-sensitive threads.
This API allows the game to receive a XGameStreamingClientPropertiesChangedCallback whenever a XGameStreamingClientProperty, like stream physical dimensions, changes. Registration WILL cause the callback to invoked with all applicable XGameStreamingClientProperty, so that querying for current property details can be done. When the streaming client device disconnects, please use XGameStreamingUnregisterClientPropertiesChanged to unregister the callback.

Example

Requirements

Header: xgamestreaming.h Library: xgameruntime.lib Supported platforms: Windows, XBOX One family consoles and XBOX Series consoles

Conceptual documentation

See also

XGameStreamingClientProperty
XGameStreamingClientPropertiesChangedCallback
XGameStreamingUnregisterClientPropertiesChanged
XGameStreaming
Last modified on August 20, 2026