Share via


IDirectDrawVideo::SetDirectDraw (Windows CE 5.0)

Send Feedback

This method passes the IDirectDraw interface to a loaded driver.

HRESULT SetDirectDraw(LPDIRECTDRAW pDirectDraw);

Parameters

Return Values

Returns an HRESULT value.

Remarks

To have the renderer release a DirectDraw interface previously passed in through SetDirectDraw, an application can call SetDirectDraw and pass in NULL. However, the renderer continues using that DirectDraw interface until it is disconnected.

Therefore, calling SetDirectDraw with a null parameter does not make the renderer stop using it immediately.

This method was created because only one instance of IDirectDraw could be loaded per process in DirectDraw 1.0.

If an application wanted to load IDirectDraw but allow the renderer to also allocate surfaces, the application could open IDirectDraw and then pass the interface to the loaded driver through IDirectDrawVideo::SetDirectDraw.

Alternatively, the application could let the renderer load DirectDraw and then obtain a reference-incremented interface to it through IDirectDrawVideo::GetDirectDraw.

Because DirectShow ships with the most recently shipped version of DirectDraw, this method is not required unless the application wants to change display modes itself and pass in a DirectDraw object, which the renderer can then use to allocate surfaces.

Requirements

DirectShow applications and DirectShow filters have different include file and link library requirements.

For more information, see Setting Up the Build Environment.

Pocket PC: Windows Mobile 5.0 and later
Smartphone: Windows Mobile 5.0 and later
OS Versions: Windows CE 2.12 and later. Version 2.12 requires DXPAK 1.0 or later.
Header:

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.