簡體   English   中英

無法獲得對IPart的引用

[英]Can't get a reference to IPart

例如,我試圖獲取對IPart接口的引用以控制Windows音頻音量,並且我正在使用IDeviceTopology::GetPartById函數來獲取它。

此功能需要一個UINT。 我嘗試了0卻一無所獲,然后屈服了,只是嘗試增加UINT直到獲得參考為止。 那樣沒有運氣。

我已經參考了正確的設備拓撲。

我的HRESULT是E_INVALIDARG

是否只是我的設備上沒有任何可用零件?

MSDN說要獲取傳遞給GetPartById的ID,我應該調用IAudioInputSelector::GetSelection 但是,要使用IAudioInputSelector,我需要已經有一個對IPart對象的引用。

最簡單的方法是枚舉主機引腳,並從所需的輸入調用GetSignalPath到所需的輸出,這將返回一部分零件。

或者,如果您具有拓撲對象,則可以調用GetSubunit或GetConnector來檢索子單元或連接器(它們也是零件)。 從每個連接器,您可以調用GetConnectedTo(),它將返回連接器另一側的零件。 繼續,您將可以遍歷整個拓撲圖並標識所有部分。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM