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

# IAcpHal::Connect

> IAcpHal::Connect

# IAcpHal::Connect

連線至 ACP。

## 語法

```cpp theme={null}
HRESULT Connect(  
         UINT32 numCommands,  
         UINT32 numMessages  
)  
```

### 參數

*numCommands*   \
類型：UINT32

指定要在 ACP 命令佇列中配置的命令數目。此值必須大於零，且足以處理每個 2.67 毫秒音訊框架所發出的命令數量。

*numMessages*   \
類型：UINT32

指定要在 ACP 訊息佇列中配置的訊息數目。如果遊戲不處理收到的訊息，此值可以為零。如果已註冊*命令已完成*訊息 (請參閱 [ACP\_MESSAGE\_TYPE](/zh-TW/reference/audio/acphal/enums/acp_message_type))，訊息數目至少會與命令數目一樣多。通常，此訊息佇列的處理頻率低於每個音訊框架一次，因此請規劃可容納數個框架份量的訊息。

### 傳回值

類型：HRESULT

如果方法成功，會傳回 `S_OK`。如果方法失敗，會傳回下列其中一個代碼 (部分清單)：

| 傳回碼 | 描述 |
| - | - |
| E\_INVALIDARG | 一或多個引數無效，或參數 *numCommands* 設定為零。 |
| E\_OUTOFMEMORY | 記憶體配置失敗。 |
| ACP\_E\_ALREADY\_CONNECTED | 已連線至 ACP。 |
| E\_UNEXPECTED | 發生未預期的錯誤。 |
| ACP\_E\_QUEUE\_FULL | ACP 佇列已滿。 |
| E\_TIMEOUT | 發生逾時錯誤。 |

## 備註

請在呼叫此介面中的任何其他方法之前呼叫此方法。不過，在呼叫 [Disconnect](/zh-TW/reference/audio/acphal/interfaces/IAcpHal/methods/iacphal_disconnect) 之後，您可以再次呼叫此方法。另請參閱 [SubmitCommand](/zh-TW/reference/audio/acphal/interfaces/IAcpHal/methods/iacphal_submitcommand)。

如果方法因 `E_INVALIDARG` 或 `ACP_E_ALREADY_CONNECTED` 以外的錯誤而失敗，建議終結**所有**現有的 ACP 用戶端物件，並使用 [AcpHalReleaseShapeContexts](/zh-TW/reference/audio/acphal/functions/acphalreleaseshapecontexts) 釋放已配置的 SHAPE 內容。之後應視需要分別使用 [AcpHalAllocateShapeContexts](/zh-TW/reference/audio/acphal/functions/acphalallocateshapecontexts) 和 [AcpHalCreate](/zh-TW/reference/audio/acphal/functions/acphalcreate) 重新配置/建立新的 SHAPE 內容和 ACP 用戶端物件。

## 需求

**標頭：** acphal.h

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

## 另請參閱

[Disconnect](/zh-TW/reference/audio/acphal/interfaces/IAcpHal/methods/iacphal_disconnect)\
[AcpHal](/zh-TW/reference/audio/acphal/acphal_members)


## Related topics

- [IAcpHal::Connect](/zh-CN/reference/audio/acphal/interfaces/IAcpHal/methods/iacphal_connect.md)
- [IAcpHal](/reference/audio/acphal/interfaces/IAcpHal/iacphal.md)
- [IAcpHal::Disconnect](/zh-CN/reference/audio/acphal/interfaces/IAcpHal/methods/iacphal_disconnect.md)
- [IAcpHal::PopMessage](/reference/audio/acphal/interfaces/IAcpHal/methods/iacphal_popmessage.md)
- [IAcpHal::SubmitCommand](/reference/audio/acphal/interfaces/IAcpHal/methods/iacphal_submitcommand.md)
