XStoreRegisterPackageLicenseLost
Registers a callback for the license lost event. This can be used to register for licenses obtained for both Durables with a package through XStoreAcquireLicenseForPackageAsync and Durables without a package (aka Durable add-ons) obtained through XStoreAcquireLicenseForDurablesAsync.
Syntax
HRESULT XStoreRegisterPackageLicenseLost(
XStoreLicenseHandle licenseHandle,
XTaskQueueHandle queue,
void* context,
XStorePackageLicenseLostCallback* callback,
XTaskQueueRegistrationToken* token
)
Parameters
licenseHandle _In_
Type: XStoreLicenseHandle
The license handle to register the callback for.
queue _In_
Type: XTaskQueueHandle
Async queue to handle asynchronous work.
context _In_opt_
Type: void*
Title defined context to pass to the callback.
callback _In_
Type: XStorePackageLicenseLostCallback*
The callback to register.
token _Out_
Type: XTaskQueueRegistrationToken*
On success contains a token used to identify the callback.
Return value
Type: HRESULT
HRESULT success or error code.
Remarks
This function registers the callback function defined by XStorePackageLicenseLostCallback. The registered function will be called when the next game license change event occurs. The registered function will not be called by the act of registration. Most commonly this function will fire when the user exceeds their concurrency limits for the specified package. This usually occurs when the user opens the package on an additional roaming device. In order to avoid a memory leak you must call XStoreUnregisterPackageLicenseLost when you are finished with the callback function.
See XStoreAcquireLicenseForPackageAsync for a usage example.
Requirements
Header: XStore.h (included in XGameRuntime.h)
Library: xgameruntime.lib
Supported platforms: Windows, Xbox One family consoles and Xbox Series consoles
See also
XStore
XStoreAcquireLicenseForPackageAsync
XStoreAcquireLicenseForPackageResult
XStoreIsLicenseValid
XStoreCloseLicenseHandle
XStorePackageLicenseLostCallback
XStoreUnregisterPackageLicenseLost