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

# Obtenir les métadonnées d'un objet blob de le stockage de titre

> Exemple de code C plat pour récupérer les métadonnées d'objets blob de XBOX Title Storage avec XblTitleStorageGetBlobMetadataAsync, notamment la pagination à l'aide des handles de résultat.

Cette rubrique montre comment récupérer les métadonnées d'objets blob depuis XBOX Title Storage à l'aide des exemples de code C plat suivants.

#### C plat

```cpp theme={null}
auto asyncBlock = std::make_unique<XAsyncBlock>();
asyncBlock->queue = queue;
asyncBlock->context = nullptr;
asyncBlock->callback = [](XAsyncBlock* asyncBlock)
{
    std::unique_ptr<XAsyncBlock> asyncBlockPtr{ asyncBlock };
    XblTitleStorageBlobMetadataResultHandle handle;
    HRESULT hr = XblTitleStorageGetBlobMetadataResult(asyncBlock, &handle);

    if (SUCCEEDED(hr))
    {
        if (blobMetadataResultHandle != nullptr)
        {
            XblTitleStorageBlobMetadataResultCloseHandle(blobMetadataResultHandle);
        }

        blobMetadataResultHandle = handle;
    }

};

HRESULT hr = XblTitleStorageGetBlobMetadataAsync(
    xboxLiveContext,
    scid,
    storageType,
    blobPath.c_str(),
    xboxUserId,
    skipItems,
    maxItems,
    asyncBlock.get()
);

if (SUCCEEDED(hr))
{
    asyncBlock.release();
}
```

## Une seule page d'objets XblTitleStorageBlobMetadata existe

L'exemple de code suivant montre comment utiliser `XblTitleStorageBlobMetadataResultHandle` pour récupérer la première page de la liste des objets [XblTitleStorageBlobMetadata](/fr-CA/reference/live/xsapi-c/title_storage_c/structs/xbltitlestorageblobmetadata).
<Note>Selon le nombre d'objets blob dont dispose le titre dans Title Storage, il peut y avoir plusieurs pages de `XblTitleStorageBlobMetadata`.</Note>

#### C plat

```cpp theme={null}
XblTitleStorageBlobMetadataResultHandle handle = blobMetadataResultHandle;

const XblTitleStorageBlobMetadata* items;
size_t itemsSize;

HRESULT hr = XblTitleStorageBlobMetadataResultGetItems(handle, &items, &itemsSize);
```

## Déterminer s'il existe d'autres pages d'objets XblTitleStorageBlobMetadata

L'exemple de code suivant montre comment vérifier s'il reste d'autres pages de `XblTitleStorageBlobMetadata` à récupérer depuis Title Storage.

#### C plat

```cpp theme={null}
XblTitleStorageBlobMetadataResultHandle handle = blobMetadataResultHandle;

bool hasNext;

HRESULT hr = XblTitleStorageBlobMetadataResultHasNext(handle, &hasNext);
```

## Récupérer d'autres pages d'objets XblTitleStorageBlobMetadata

L'exemple de code suivant montre comment récupérer la page suivante d'objets `XblTitleStorageBlobMetadata`.

#### C plat

```cpp theme={null}
XblTitleStorageBlobMetadataResultHandle handle = blobMetadataResultHandle;

auto asyncBlock = std::make_unique<XAsyncBlock>();
asyncBlock->queue = queue;
asyncBlock->context = nullptr;
asyncBlock->callback = [](XAsyncBlock* asyncBlock)
{
    std::unique_ptr<XAsyncBlock> asyncBlockPtr{ asyncBlock };
    XblTitleStorageBlobMetadataResultHandle handle{ nullptr };
    
    HRESULT hr = XblTitleStorageBlobMetadataResultGetNextResult(asyncBlock, &handle);
};

HRESULT hr = XblTitleStorageBlobMetadataResultGetNextAsync(handle, maxItems, asyncBlock.get());

if (SUCCEEDED(hr))
{
    asyncBlock.release();
}
```

## Dupliquer XblTitleStorageBlobMetadataResultHandle

L'exemple de code suivant montre comment créer un doublon de `XblTitleStorageBlobMetadataResultHandle`.

#### C plat

```cpp theme={null}
XblTitleStorageBlobMetadataResultHandle handle = blobMetadataResultHandle;
XblTitleStorageBlobMetadataResultHandle duplicatedHandle;

HRESULT hr = XblTitleStorageBlobMetadataResultDuplicateHandle(handle, &duplicatedHandle);
```

## Fermer XblTitleStorageBlobMetadataResultHandle

L'exemple de code suivant montre comment fermer `XblTitleStorageBlobMetadataResultHandle`.

<Note>Vous devez fermer ce handle lorsque vous avez fini de l'utiliser.</Note>

#### C plat

```cpp theme={null}
XblTitleStorageBlobMetadataResultHandle handle = blobMetadataResultHandle;
XblTitleStorageBlobMetadataResultCloseHandle(handle);
blobMetadataResultHandle = nullptr;
```

## Voir aussi

[XAsyncBlock](/fr-CA/reference/system/xasync/structs/xasyncblock)

[XblTitleStorageBlobMetadataResultCloseHandle](/fr-CA/reference/live/xsapi-c/title_storage_c/functions/xbltitlestorageblobmetadataresultclosehandle)

[XblTitleStorageGetBlobMetadataAsync](/fr-CA/reference/live/xsapi-c/title_storage_c/functions/xbltitlestoragegetblobmetadataasync)

[XblTitleStorageGetBlobMetadataResult](/fr-CA/reference/live/xsapi-c/title_storage_c/functions/xbltitlestoragegetblobmetadataresult)

[XblTitleStorageBlobMetadata](/fr-CA/reference/live/xsapi-c/title_storage_c/structs/xbltitlestorageblobmetadata)

[XblTitleStorageBlobMetadataResultGetItems](/fr-CA/reference/live/xsapi-c/title_storage_c/functions/xbltitlestorageblobmetadataresultgetitems)

[XblTitleStorageBlobMetadataResultHasNext](/fr-CA/reference/live/xsapi-c/title_storage_c/functions/xbltitlestorageblobmetadataresulthasnext)

[XblTitleStorageBlobMetadataResultGetNextAsync](/fr-CA/reference/live/xsapi-c/title_storage_c/functions/xbltitlestorageblobmetadataresultgetnextasync)

[XblTitleStorageBlobMetadataResultGetNextResult](/fr-CA/reference/live/xsapi-c/title_storage_c/functions/xbltitlestorageblobmetadataresultgetnextresult)

[XblTitleStorageBlobMetadataResultDuplicateHandle](/fr-CA/reference/live/xsapi-c/title_storage_c/functions/xbltitlestorageblobmetadataresultduplicatehandle)


## Related topics

- [Télécharger un objet blob depuis le stockage de titre](/fr-CA/services/xbox-services/storage/title-storage/how-to/live-downloading-title-storage-blob.md)
- [Supprimer un objet blob de le stockage de titre](/fr-CA/services/xbox-services/storage/title-storage/how-to/live-deleting-title-storage-blob.md)
- [Téléverser un objet blob vers le stockage de titre](/fr-CA/services/xbox-services/storage/title-storage/how-to/live-uploading-title-storage-blob.md)
- [Procédures](/fr-CA/services/xbox-services/storage/title-storage/how-to/index.md)
- [Vue d'ensemble de le stockage de titre des services XBOX](/fr-CA/services/xbox-services/storage/title-storage/live-title-storage-overview.md)
