Desktop Window Manager
Desktop Window Manager

The desktop composition feature, introduced in Windows Vista, fundamentally changes the way applications display pixels on the screen. When desktop composition is enabled, individual windows no longer draw directly to the screen or primary display device as they did in previous versions of Microsoft Windows. Instead, their drawing is redirected to off-screen surfaces in video memory, which are then rendered into a desktop image and presented on the display.

Desktop composition is performed by the Desktop Window Manager (DWM). Through desktop composition, DWM enables visual effects on the desktop as well as various features such as glass window frames, 3-D window transition animations, Windows Flip and Windows Flip3D , and high resolution support. For more information about the user experience features enabled by the DWM visit the Windows Vista: Features user experience page.

Many of the DWM features can be controlled or accessed by an application through the DWM APIs . The following documentation describes some of the features and requirements of the DWM APIs.

Desktop Window Manager APIs

DWM consists of the following APIs. Additional documentation is available by following the associated links.

Enumerations

DWM_SOURCE_FRAME_SAMPLING

Specifies the frame sampling type.

DWMFLIP3DWINDOWPOLICY

Specifies the Flip3D window policy.

DWMNCRENDERINGPOLICY

Specifies a constant that defines the non-client area rendering policy.

DWMWINDOWATTRIBUTE

Specifies window attributes for non-client rendering. Some values are used to set attributes and others to retrieve current values.

Functions

DwmAttachMilContent

DwmDefWindowProc

Default window procedure for DWM hit-testing within the non-client area.

DwmDetachMilContent

DwmEnableBlurBehindWindow

Enables the blur effect on the provided window handle.

DwmEnableComposition

Enables or disables DWM composition.

DwmEnableMMCSS

Tells the DWM to opt into Multimedia Class Schedule Service (MMCSS) scheduling while the calling process is alive.

DwmExtendFrameIntoClientArea

Extends the window frame behind the client area.

DwmFlush

DwmGetColorizationColor

Retrieves the current color used for DWM glass composition. This value is based on the current color scheme and is modifiable by the user. Applications can listen for color changes by handling the WM_DWMCOLORIZATIONCOLORCHANGED notification.

DwmGetCompositionTimingInfo

Retrieves the current composition timing information.

DwmGetGraphicsStreamClient

DwmGetGraphicsStreamTransformHint

DwmGetTransportAttributes

DwmGetWindowAttribute

Retrieves the current value of a specified attribute applied to the window.

DwmInvalidateIconicBitmaps

Called by a source application to indicate that all previously provided iconic bitmaps from a window, both thumbnails and peek representations, should be refreshed.

DwmIsCompositionEnabled

Obtains a value that indicates whether DWM composition is enabled. Applications can listen for composition state changes by handling the WM_DWMCOMPOSITIONCHANGED notification.

DwmModifyPreviousDxFrameDuration

Changes the number of refreshes the previous frame will be displayed.

DwmQueryThumbnailSourceSize

Returns the source size of the DWM thumbnail.

DwmRegisterThumbnail

Creates a DWM thumbnail relationship between the destination and source windows.

DwmSetDxFrameDuration

Sets the number of refreshes to display the presented frame.

DwmSetIconicLivePreviewBitmap

Called by a source application to provide a static, iconic bitmap to use as a peek preview for a window. This bitmap can be used by the taskbar to show a full-sized preview of a window or tab.

DwmSetIconicThumbnail

Called by a source application to set an iconic bitmap on a window for use as a thumbnail representation. This is a static bitmap. This bitmap can be used by the taskbar as a thumbnail switch target for the window or tab.

DwmSetPresentParameters

Sets the present parameters for frame composition.

DwmSetWindowAttribute

Sets the value of the specified attributes for non-client rendering to apply to the window.

DwmUnregisterThumbnail

Removes a DWM thumbnail relationship created by DwmRegisterThumbnail.

DwmUpdateThumbnailProperties

Updates the properties for a given DWM thumbnail.

Structures

DWM_BLURBEHIND

Specifies DWM blur behind properties.

DWM_PRESENT_PARAMETERS

Contains DWM video frame parameters for frame composition.

DWM_THUMBNAIL_PROPERTIES

Specifies DWM thumbnail properties.

DWM_TIMING_INFO

Contains DWM composition timing information.

MilMatrix3x2D

UNSIGNED_RATIO

A ratio used with the DWM timing API.

Tags : maroki


Community Content

Thomas Lee
This is developer documentation, not a technical support forum.
To those who have, or who might consider asking a questions regarding end-user/consumer facing application or Windows issues: This is not the correct place for these questions. This page is for developer documentation regarding the Desktop Window Manager API. Try http://www.vistaforums.com/forum/ or a newsgroup, or call Microsoft technical support, or your computer vendor.
Thanks.

Tags : contentbug

Page view tracker