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

# XGameSaveEnumerateContainerInfoByName

> XGameSaveEnumerateContainerInfoByName

# XGameSaveEnumerateContainerInfoByName

擷取 **XGameSaveProvider** 的容器資訊。提供前置詞會使函式只傳回具有相同前置詞的項目。

## 語法

```cpp theme={null}
HRESULT XGameSaveEnumerateContainerInfoByName(  
         XGameSaveProviderHandle provider,  
         const char* containerNamePrefix,  
         void* context,  
         XGameSaveContainerInfoCallback* callback  
)  
```

### 參數

*provider*   \_In\_\
類型：XGameSaveProviderHandle

包含 [XGameSaveContainerInfo](/zh-TW/reference/system/xgamesave/structs/xgamesavecontainerinfo) 的 **XGameSaveProvider**。

*containerNamePrefix*   \_In\_opt\_z\_\
類型：char\*

用來在容器清單中搜尋相符容器名稱的前置詞。

*context*   \_In\_opt\_\
類型：void\*

將傳遞至回呼函式的指標。

*callback*   \_In\_\
類型：XGameSaveContainerInfoCallback\*

針對每個符合前置詞的容器執行的回呼函式，傳回 false 可停止列舉。使用此函式收集 [XGameSaveContainerInfo](/zh-TW/reference/system/xgamesave/structs/xgamesavecontainerinfo)。

### 傳回值

類型：HRESULT

函式結果。

## 備註

使用此函式檢查使用者有哪些可用的容器。這可能包括需要在 UX 中顯示的資料。列舉這組容器不會對 SyncOnDemand 提供者觸發同步，並可讓呼叫端透過 [XGameSaveContainerInfo](/zh-TW/reference/system/xgamesave/structs/xgamesavecontainerinfo) 的 needsSync 欄位實際檢查同步狀態。對 *needsSync* 設為 true 的容器進行任何 Blob 資料讀取或使用更新內容，都會強制同步，並可能傳回各種同步錯誤。如果您不需要為列舉的容器指定前置詞，可以使用 [XGameSaveEnumerateContainerInfo](/zh-TW/reference/system/xgamesave/functions/xgamesaveenumeratecontainerinfo)。[XGameSaveEnumerateContainerInfo](/zh-TW/reference/system/xgamesave/functions/xgamesaveenumeratecontainerinfo) 會傳回可用容器的完整清單。

```cpp theme={null}
// Enumerate Container List by prefix, if no prefix is supplied it is 
// the same as calling XGameSaveEnumerateContainerInfo. 
// NOTE: this should be safe to call from a time critical thread 
// but the we are at the mercy of the callback. 
void Sample::_EnumerateContainerInfoByName(const char* prefix) 
{ 
    HRESULT hr = XGameSaveEnumerateContainerInfoByName(_provider, prefix, this, 
        [](const XGameSaveContainerInfo* container, void* context) 
    { 
        auto self = reinterpret_cast<Sample*>(context); 
        self->_UpdateContainerList(container); 
        return true; 
    }); 
    if (FAILED(hr)) 
    { 
        _HandleContainerErrors(prefix, hr); 
    } 
  
} 
```

## 需求

**標頭：** XGameSave.h

**程式庫：** xgameruntime.lib

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

## 概念文件

* [時間敏感執行緒](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/console-dev/overviews/threads/time-sensitive-threads)

## 另請參閱

[XGameSave](/zh-TW/reference/system/xgamesave/xgamesave_members)\
[XGameSaveEnumerateContainerInfo](/zh-TW/reference/system/xgamesave/functions/xgamesaveenumeratecontainerinfo)\
[偵錯遊戲存檔](/zh-TW/build/core-features/common/game-save/game-saves-debugging)


## Related topics

- [XGameSaveEnumerateContainerInfoByName](/reference/system/xgamesave/functions/xgamesaveenumeratecontainerinfobyname.md)
- [XGameSaveEnumerateContainerInfo](/reference/system/xgamesave/functions/xgamesaveenumeratecontainerinfo.md)
- [XGameSaveContainerInfoCallback](/reference/system/xgamesave/functions/xgamesavecontainerinfocallback.md)
- [XGameSaveContainerInfo](/reference/system/xgamesave/structs/xgamesavecontainerinfo.md)
