'Vista'에 해당되는 글 1건

  1. 2009/01/05 Aero Glass Using DWM(Desktop Window Manager) Part #1
WPF2009/01/05 06:50

이번시간부터 총 2차례에 걸쳐서 DWM(Desktop WIndow Manager)에 대하여 살펴보도록하겠습니다. Windows Vista가 출시되면사 많은 사람들의 이목이 집중됬던 기술중의 하나인 "DWM", 해석하자면 데스크탑 윈도우 관리자 라고 할수 있는데요. 이름만 가지고는 뭐하는 녀석인지 아직 감이 잘 오지 않습니다. 그렇다면 아래그림을 한번 보겠습니다.


개인적으로 Windows Vista가 처음 등장했을때 가장 많은 관심을 가지게 만들었던 기능입니다. 위와 같은 기능을 가능케 하는 기술이 바로 DWM이라고 하면 이해하기가 쉬울것같습니다. WPF가 바탕화면 레이어로 렌더링 하는 작업을 제어하기 위한 기술이라면 DWM은 화면상에 렌더링 되고 있는 다양한 Window를 바탕화면에 혼합하는 방식을 관리하는 기술이라고 할 수 있겠습니다.

DWM은 Windows Vista Home Basic 버전을 제외한 모든 Windows Vista 버전에서 사용 가능하며 dwm.exe파일을 통해 인터페이스가 제공됩니다. DWM의 기능을 사용하고자 할 경우에는 dwmapi.dll에서 제공하는 인터페이스를 통해 dwm.exe에 접근 할 수 있으며 dwmapi.dll의 인터페이스 선언은 windowssdk.msdn.microsoft.com 정보를 얻을 수 있습니다. 

제 글에서는 dwmapi.dll을 사용한 Aero Glass구현에 대하여 다룰 예정이기 때문에 DWM에 대한 설명은 여기까지만 하고, 보다 자세한 설명이 필요하신분은 메일을 보내주시거나, MSDN을 참고해주시기바랍니다.

여러분의 프로그램에 DWM의 기능을 사용하고자 한다면 dwmapi.dll의 여러가지 인터페이스를 통해 DWM 파라미터를 설정해야 합니다.(Windows API와 구현방식이 비슷합니다.) 아래는 dwmapi.dll에서 제공하는 기본적인 인터페이스를 나열해 놓은 것으로
위에서도 말씀드렸듯이 DWM 인터페이스를 사용하려면 Windows Vista Home Basic이상의 버전을 실행해야 합니다.

DwmEnableComposition, DwmIsCompositionEnabled, DwmSetWindowAttribute, DwmGetWindowAttribute, DwmGetColorizationColor, DwmDefWindowProc, DwmExtendFrameIntoClientArea, DwmEnableBlurBehindWindow, DwmQueryThumbnailSourceSize, DwmRegisterThumbnail, DwmUnregisterThumbnail, DwmUpdateThumbnailProperties

각 인터페이스에 대한 설명은 다음시간에 다루도록 하겠습니다. 이번시간에는 여기까지 Aero Glass를 구현하기 위한 DWM에 대하여 간단하게 살펴보았습니다. 다음시간에는 실제 DWM 인터페이스를 활용하여 Aero기능을 구현 해보 도록 하겠습니다.

PS. 새벽에 정신없이 포스팅한거라 말이 잘안맞는거 같네요 죄송합니다. ㅜ



 

크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by 곡스