TdhEnumerateProviders 函式 (tdh.h)
擷取電腦上已註冊的所有提供者清單。
語法
TDHSTATUS TdhEnumerateProviders(
[out] PPROVIDER_ENUMERATION_INFO pBuffer,
[in, out] ULONG *pBufferSize
);
參數
[out] pBuffer
在電腦上公開定義其事件的提供者陣列。 如需詳細資訊,請參閱 PROVIDER_ENUMERATION_INFO 結構。
[in, out] pBufferSize
pBuffer緩衝區的大小,以位元組為單位。 如果函式成功,此參數會收到所使用的緩衝區大小。 如果緩衝區太小,函式會傳回ERROR_INSUFFICIENT_BUFFER,並將此參數設定為所需的緩衝區大小。 如果輸入上的緩衝區大小為零,則緩衝區中不會傳回任何資料,而且此參數會收到所需的緩衝區大小。
傳回值
如果成功,則傳回ERROR_SUCCESS。 否則,除了其他傳回碼之外,此函式還會傳回下列其中一個傳回碼。
傳回碼 | 描述 |
---|---|
ERROR_INSUFFICIENT_BUFFER | pBuffer緩衝區的大小太小。 使用 pBufferSize 中設定的必要緩衝區大小來配置新的緩衝區。 |
ERROR_INVALID_PARAMETER | 一或多個參數無效。 |
備註
呼叫 TdhEnumerateProvidersForDecodingSource 函式 ,以擷取電腦上已註冊 MOF 類別或資訊清單檔的提供者清單。
由於已註冊的事件提供者數目可能會在呼叫此函式之間變動,因此您應該將此函式放在迴圈中,直到傳回的值不再ERROR_INSUFFICIENT_BUFFER為止。
範例
如需示範如何列舉提供者的範例,請參閱 列舉提供者。
規格需求
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | tdh.h |
程式庫 | Tdh.lib |
Dll | Tdh.dll |