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

# XApuEnqueueCommand

> XApuEnqueueCommand

# XApuEnqueueCommand

將單一命令提交至 XAPU 命令佇列。

## 語法

```cpp theme={null}
HRESULT XApuEnqueueCommand(  
         XApuHandle handle,  
         XApuCommandId* command,  
         uint32_t* totalCommandCount  
)  
```

### 參數

*handle*   \_In\_\
類型: XApuHandle

呼叫 [XApuConnect](/zh-TW/reference/audio/xapu/functions/xapuconnect) 所傳回的控制代碼。

*command*   \_In\_\
類型: [XApuCommandId\*](/zh-TW/reference/audio/xapu/structs/xapucommandid)

要提交至 XAPU 輸入佇列的命令。

*totalCommandCount*   \_Out\_opt\_\
類型: uint32\_t\*

傳回的命令總數。

### 傳回值

類型: HRESULT

如果成功，會傳回 S\_OK；否則會傳回錯誤碼。

## 備註

此呼叫速度很快，因為它不會配置資源或處理資料，只會將命令傳送至硬體伺服器。如果有 [XApuConnectInputParameters::maxQueuedCommandsPerStream](/zh-TW/reference/audio/xapu/structs/xapuconnectinputparameters) 個命令正在處理中，此呼叫會傳回 [XAPU\_E\_QUEUE\_FULL](/zh-TW/reference/audio/xapu/enums/xapuerrors)。若要避免此錯誤，呼叫端必須透過 [XApuDequeueResult](/zh-TW/reference/audio/xapu/functions/xapudequeueresult) 擷取一或多個結果。此呼叫是安全執行緒，也就是說可以從多個執行緒提交命令，不過從多個執行緒呼叫它並沒有效能上的優勢。

此呼叫也會接受 uint32\_t 的指標，以傳回目前工作階段的 *totalCommandCount*。此數字代表自工作階段開始並呼叫 [XApuConnect](/zh-TW/reference/audio/xapu/functions/xapuconnect) 之後，已成功提交的命令總數。此數字不會歸零。

如果硬體伺服器處於不良狀態，[XApuEnqueueCommand](/zh-TW/reference/audio/xapu/functions/xapuenqueuecommand) 會傳回 [XAPU\_E\_DEVICE\_FATAL\_ERROR](/zh-TW/reference/audio/xapu/enums/xapuerrors) 錯誤碼。在此情況下，所有 XAPU 用戶端都應中斷連線，然後重新連線。

如果此方法失敗，會傳回描述性的錯誤碼。

下表將每個 [XApuCommandType](/zh-TW/reference/audio/xapu/enums/xapucommandtype) 對應至應傳遞給 **XApuEnqueueCommand** 的結構類型:

| XApuCommandType | 結構類型 |
| - | - |
| XApuCommandType::Activate | [XApuDecodeConvertActivateCommand](/zh-TW/reference/audio/xapu/structs/xapudecodeconvertactivatecommand) |
| XApuCommandType::Deactivate | [XApuCommandId](/zh-TW/reference/audio/xapu/structs/xapucommandid) |
| XApuCommandType::Process | [XApuDecodeConvertCommand](/zh-TW/reference/audio/xapu/structs/xapudecodeconvertcommand) |
| XApuCommandType::Notify | [XApuCommandId](/zh-TW/reference/audio/xapu/structs/xapucommandid) |
| XApuCommandType::Reset | [XApuCommandId](/zh-TW/reference/audio/xapu/structs/xapucommandid) |

## 需求

**標頭:** xapu.h

**程式庫:** xapu.lib

**支援的平台:** XBOX Series X|S

## 另請參閱

[XAPU](/zh-TW/reference/audio/xapu/xapu_members)


## Related topics

- [XApuEnqueueCommand](/reference/audio/xapu/functions/xapuenqueuecommand.md)
- [XApuCommandType](/reference/audio/xapu/enums/xapucommandtype.md)
- [XApuDecodeConvertCommand](/reference/audio/xapu/structs/xapudecodeconvertcommand.md)
- [XApuDecodeConvertActivateCommand](/reference/audio/xapu/structs/xapudecodeconvertactivatecommand.md)
