判斷物件支援的介面

[與此頁面相關聯的功能 自訂檔案和資料流程處理常式是舊版功能。 MediaStreamSource 類別已取代它。 MediaStreamSource 類別已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用 MediaStreamSource 類別 ,而不是 自訂檔案和資料流程處理常式。 Microsoft 建議使用舊版 API 的現有程式碼盡可能重寫為使用新的 API。

QueryInterface方法可讓應用程式查詢物件,以判斷它支援的介面。 範例應用程式會將 ppv 指標設定為目前的介面。

STDMETHODIMP CAVIFileCF::QueryInterface( 
    const IID FAR& iid, 
    void FAR* FAR* ppv) 
{ 
    if (iid == IID_IUnknown) 
        *ppv = this;                     // set the interface pointer 
                                         // to this instance 
    else if (iid == IID_IClassFactory) 
        *ppv = this;                     // second chance to set the 
                                         // interface pointer to this 
                                         // instance 
    else 
        return ResultFromScode(E_NOINTERFACE); 
    AddRef();  //Increment the reference count 
    return NULL; 
}