CUnknown.NonDelegatingQueryInterface method

[The feature associated with this page, DirectShow, is a legacy feature. It has been superseded by MediaPlayer, IMFMediaEngine, and Audio/Video Capture in Media Foundation. Those features have been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use MediaPlayer, IMFMediaEngine and Audio/Video Capture in Media Foundation instead of DirectShow, when possible. Microsoft suggests that existing code that uses the legacy APIs be rewritten to use the new APIs if possible.]

Retrieves an interface pointer and increments the reference count. This method implements the INonDelegatingUnknown::NonDelegatingQueryInterface method.

Syntax

HRESULT NonDelegatingQueryInterface(
   REFIID riid,
   void   **ppv
);

Parameters

riid

Identifier of the interface.

ppv

Address of a pointer to receive the interface.

Return value

Returns one of the HRESULT values shown in the following table.

Return code Description
S_OK
Success.
E_NOINTERFACE
Object does not support this interface.
E_POINTER
NULL pointer argument.

Remarks

The CUnknown class exposes only the IUnknown interface. Override this method to expose additional interfaces. For information on how to override this method, see How to Implement IUnknown.

Requirements

Requirement Value
Header
Combase.h (include Streams.h)
Library
Strmbase.lib (retail builds);
Strmbasd.lib (debug builds)