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

# XStoreQueryProductsResult

> XStoreQueryProductsResult

# XStoreQueryProductsResult

Gets the results for a call to [XStoreQueryProductsAsync](/reference/system/xstore/functions/xstorequeryproductsasync).

## Syntax

```cpp theme={null}
HRESULT XStoreQueryProductsResult(  
         XAsyncBlock* async,  
         XStoreProductQueryHandle* productQueryHandle  
)  
```

### Parameters

*async*   \_Inout\_\
Type: [XAsyncBlock\*](/reference/system/xasync/structs/xasyncblock)

The `XAsyncBlock` passed to [XStoreQueryProductsAsync](/reference/system/xstore/functions/xstorequeryproductsasync).
Use the [XAsyncBlock](/reference/system/xasync/structs/xasyncblock) to check the call's status and get the results.
For more information, see [XAsyncBlock](/reference/system/xasync/structs/xasyncblock).

*productQueryHandle*   \_Out\_\
Type: XStoreProductQueryHandle\*

On return, contains a XStoreProductQueryHandle representing the query. The returned XStoreProductQueryHandle can be passed to [XStoreEnumerateProductsQuery](/reference/system/xstore/functions/xstoreenumerateproductsquery) to enumerate the products the query returned.

### Return value

Type: HRESULT

S\_OK on success; otherwise, returns an error code.

## Remarks

Use this result function to get the execution results of [XStoreQueryProductsAsync](/reference/system/xstore/functions/xstorequeryproductsasync). If the execution succeeds, it returns the listing information.
Call this function after [XStoreQueryProductsAsync](/reference/system/xstore/functions/xstorequeryproductsasync), usually in the context of a callback function.

For a usage example, see [XStoreQueryProductsAsync](/reference/system/xstore/functions/xstorequeryproductsasync).

## Requirements

**Header:** XStore.h (included in XGameRuntime.h)

**Library:** xgameruntime.lib

**Supported platforms:** Windows, XBOX One family consoles, and XBOX Series consoles

## Conceptual documentation

* [Granting players access to add-on content](/publishing/xstore-commerce/xstore-granting-access)

## See also

[XStore](/reference/system/xstore/xstore_members)\
[XStoreQueryAssociatedProductsAsync](/reference/system/xstore/functions/xstorequeryassociatedproductsasync)\
[XStoreQueryEntitledProductsAsync](/reference/system/xstore/functions/xstorequeryentitledproductsasync)\
[XStoreQueryProductsAsync](/reference/system/xstore/functions/xstorequeryproductsasync)\
[XStoreQueryProductForCurrentGameAsync](/reference/system/xstore/functions/xstorequeryproductforcurrentgameasync)\
[XStoreQueryProductForPackageAsync](/reference/system/xstore/functions/xstorequeryproductforpackageasync)\
[Basic store operations](/publishing/xstore-commerce/xstore-basic-operations)\
[Granting players access to add-on content](/publishing/xstore-commerce/xstore-granting-access)


## Related topics

- [XStoreEnumerateProductsQuery](/reference/system/xstore/functions/xstoreenumerateproductsquery.md)
- [XStoreCloseProductsQueryHandle](/reference/system/xstore/functions/xstorecloseproductsqueryhandle.md)
- [XStoreQueryProductsAsync](/reference/system/xstore/functions/xstorequeryproductsasync.md)
- [XStoreProductsQueryHasMorePages](/reference/system/xstore/functions/xstoreproductsqueryhasmorepages.md)
- [XStoreProductsQueryNextPageAsync](/reference/system/xstore/functions/xstoreproductsquerynextpageasync.md)
