共用方式為


QOSEnumerateFlows 函式 (qos2.h)

QOSEnumerateFlows 函式會列舉所有現有的流程。

語法

ExternC BOOL QOSEnumerateFlows(
  [in]      HANDLE QOSHandle,
  [in, out] PULONG Size,
  [out]     PVOID  Buffer
);

參數

[in] QOSHandle

QOSCreateHandle所傳回之 QOS 子系統的控制碼。

[in, out] Size

表示 Buffer 參數的大小,以位元組為單位。

在函式傳回時,如果成功,此參數會指定複製到 Buffer的位元組數目。

如果此呼叫因 ERROR_INSUFFICIENT_BUFFER而失敗,此參數會指出所需的 最小緩衝區 大小,才能順利完成此作業。

[out] Buffer

QOS_FlowId流程識別碼陣列的指標。 QOS_FlowId是不帶正負號的 32 位整數。

傳回值

如果函式成功,則傳回非零的值。

如果函式失敗,則傳回值為 0。 若要取得擴充的錯誤資訊,請呼叫 GetLastError。 接下來有一些可能的錯誤碼。

傳回碼 描述
ERROR_INVALID_HANDLE
QOSHandle參數無效。
ERROR_INSUFFICIENT_BUFFER
緩衝區太小。 在輸出中, Size 將包含所需的最小緩衝區大小。 然後,應該使用指定大小的緩衝區再次呼叫此函式。
ERROR_INVALID_PARAMETER
DestAddr參數無效。
ERROR_NOT_ENOUGH_MEMORY
表示記憶體配置失敗。
ERROR_NO_SYSTEM_RESOURCES
資源不足,無法執行作業。
ERROR_IO_DEVICE
因為 I/O 裝置錯誤,所以無法執行要求。
ERROR_DEVICE_REINITIALIZATION_NEEDED
指定的裝置因為硬體錯誤而需要重新初始化。 應用程式應該會再次清除並呼叫 QOSCreateHandle

備註

成功呼叫此函式需要系統管理許可權

呼叫 QOSEnumerateFlows 函式會擷取 QOS 子系統上目前作用中的 QOS_FlowId清單。 這些 QOS_FlowId接著可用來呼叫 QOSQueryFlow 函式,以取得個別流程的詳細資訊。

此函式具有兩次呼叫語意。 第一次呼叫 以取得Buffer大小,然後在第一次呼叫失敗且ERROR_INSUFFICIENT_BUFFER) 擷取流程清單時,再次呼叫 (適當大小的Buffer第二次呼叫可能會因為第一次呼叫之後新增的流程發生ERROR_INSUFFICIENT_BUFFER失敗。

無法修改來自另一個進程的流程。

需求

   
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 [僅限傳統型應用程式]
目標平台 Windows
標頭 qos2.h (包含 Qos2.h)
程式庫 Qwave.lib
Dll Qwave.dll

另請參閱

品質 Windows 音訊/視訊體驗 (qWAVE)