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

# XPackageEnumerationCallback

> XPackageEnumerationCallback

# XPackageEnumerationCallback

[XPackageEnumeratePackages](/zh-TW/reference/system/xpackage/functions/xpackageenumeratepackages) 用來列舉每個套件的回呼。

## 語法

```cpp theme={null}
bool XPackageEnumerationCallback(  
         void* context,  
         const XPackageDetails* details  
)  
```

### 參數

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

開始列舉套件時傳遞給 [XPackageEnumeratePackages](/zh-TW/reference/system/xpackage/functions/xpackageenumeratepackages) 的內容。

*details*   \_In\_\
類型：[XPackageDetails](/zh-TW/reference/system/xpackage/structs/xpackagedetails)\*

指向 [XPackageDetails](/zh-TW/reference/system/xpackage/structs/xpackagedetails) 結構的指標，該結構包含列舉中目前套件的安裝資訊。

### 傳回值

類型：bool

傳回 true 以繼續列舉套件，或傳回 false 以停止列舉。

## 備註

在 [XPackageEnumeratePackages](/zh-TW/reference/system/xpackage/functions/xpackageenumeratepackages) 列舉期間，會針對每個套件呼叫 **XPackageEnumerationCallback** 回呼。

[XPackageEnumeratePackages](/zh-TW/reference/system/xpackage/functions/xpackageenumeratepackages) 和 [XPackageRegisterPackageInstalled](/zh-TW/reference/system/xpackage/functions/xpackageregisterpackageinstalled) 都會透過 [XPackageDetails](/zh-TW/reference/system/xpackage/structs/xpackagedetails) 結構提供安裝的詳細資料。如果套件正在安裝，**XPackageDetails** 的 **installing** 屬性為 **true**，您可以建立安裝監視器，讓套件的識別碼監視進度。

沒有一般性的安裝佇列通知；其用意是使用 [XPackageEnumeratePackages](/zh-TW/reference/system/xpackage/functions/xpackageenumeratepackages) 來顯示和追蹤進行中的項目，並使用 [XPackageRegisterPackageInstalled](/zh-TW/reference/system/xpackage/functions/xpackageregisterpackageinstalled) 來宣告新 DLC 的存在。也沒有用來啟動、停止或取消安裝的機制。從遊戲的角度來看，安裝應該會自行處理。錯誤會自動重試，而且對遊戲而言是不可見的。

範例：

```cpp theme={null}
bool CALLBACK ListDlcCallback(
    void* /* context */,
    const XPackageDetails* details)
{
    printf("Found dlc: %s\n", details->displayName);
    return true; // continue enumerating
}

HRESULT ListDlc()
{
    HRESULT hr = XPackageEnumeratePackages(
        XPackageKind::Content,                      /* Looking for content packages (DLC) */
        XPackageEnumerationScope::ThisAndRelated,   /* For this game and related games*/
        nullptr, ListDlcCallback);
    return hr;
}
```

## 需求

**標頭：** XPackage.h

**程式庫：** xgameruntime.lib

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

## 概念文件

* [管理可下載內容 (DLC) 及授權](/zh-TW/publishing/xstore-commerce/xstore-dlc)

## 另請參閱

[XPackage](/zh-TW/reference/system/xpackage/xpackage_members)\
[如何為 PC 和 XBOX One 建立及使用可下載內容套件 (DLC)](/zh-TW/build/core-features/common/packaging/packaging-downloadable-content-dlc)\
[XPackageDetails](/zh-TW/reference/system/xpackage/structs/xpackagedetails)\
[XPackageEnumeratePackages](/zh-TW/reference/system/xpackage/functions/xpackageenumeratepackages)\
[XPackageRegisterPackageInstalled](/zh-TW/reference/system/xpackage/functions/xpackageregisterpackageinstalled)


## Related topics

- [XPackageEnumerationCallback](/reference/system/xpackage/functions/xpackageenumerationcallback.md)
- [XPackageEnumeratePackages](/reference/system/xpackage/functions/xpackageenumeratepackages.md)
- [XPackageMountWithUiAsync](/reference/system/xpackage/functions/xpackagemountwithuiasync.md)
- [Manage and license downloadable content (DLC)](/publishing/xstore-commerce/xstore-dlc.md)
- [管理并授权可下载内容 (DLC)](/zh-CN/publishing/xstore-commerce/xstore-dlc.md)
