Presentation is loading. Please wait.

Presentation is loading. Please wait.

윈도 XP 기반의 소프트웨어 개발 유상열 솔루션 매니저 마이크로소프트 윈도 XP Savvy 어플리케이션  운영체제와 협력하여 최상의 사용자 경험을 제공한다  사용자들은 Savvy 어플리케이션을 윈도 XP 에서 최상의 어플리케이션으로 인식한다  사용자들은 윈도 XP.

Similar presentations


Presentation on theme: "윈도 XP 기반의 소프트웨어 개발 유상열 솔루션 매니저 마이크로소프트 윈도 XP Savvy 어플리케이션  운영체제와 협력하여 최상의 사용자 경험을 제공한다  사용자들은 Savvy 어플리케이션을 윈도 XP 에서 최상의 어플리케이션으로 인식한다  사용자들은 윈도 XP."— Presentation transcript:

1

2 윈도 XP 기반의 소프트웨어 개발 유상열 솔루션 매니저 마이크로소프트

3 윈도 XP Savvy 어플리케이션  운영체제와 협력하여 최상의 사용자 경험을 제공한다  사용자들은 Savvy 어플리케이션을 윈도 XP 에서 최상의 어플리케이션으로 인식한다  사용자들은 윈도 XP 를 구매할때 Savvy 어플리케이션을 구매하고 싶어한다

4 윈도 XP 프로그래밍 지침  새로운 비주얼 스타일과통합  고품질 아이콘 저작  빠른 사용자 전환을 최대한 고려  오토플레이 핸들러 작성  제어판 분류를 따른다  패스포트 인식

5 윈도 카탈로그  소비자를 ISV, OEM 및 IHV 등과 연결  또한 마이크로소프트를 ISV, OEM 및 IHV 등과 연결하는 방법  모든 종류의 어플리케이션을 나열  로고 어플리케이션은 더욱 주목받는 위치에 배치

6 윈도 카탈로그  ‘ 시작 ’ 의 ‘ 모든 프로그램 ’ 을 통해 액세스  문제 해결, 도움말, 어플리케이션 호환성 패치 등에 대한 ISV 및 마이크로소프트간 연락처 목록  ISV 로 하여금 베타 정보나 이벤트 등에 관한 정보를 얻을수 있도록

7 윈도 XP 프로그래머  비주얼 스타일  빠른 사용자 전환  병렬 어셈블리  GDI+  기타  오토 플레이 핸들러  64 비트 윈도  윈도 로고 프로그램  어플리케이션 호환성 테스트  플랫폼 SDK

8 비주얼 스타일

9 마이크로소프트 역할  깨끗하고 단순한 비주얼 스타일 제공  ISV 로 하여금 새로운 스타일을 활용하기 위한 메카니즘을 제공  커먼 컨트롤  Theming API  가이드라인 제공

10 비주얼 스타일을 적용하는 이유  고객의 즐거움과 열정을 이끌어낼 수 있다  주요 릴리즈임을 알린다  장엄해 보이는 ‘ 클래식 ’ 스타일을 변경  비주얼 디자인을 사용자 경험의 키 컴포넌트로 활용한다

11 새로와진 점 둥근 컨트롤 Alpha 지원 컨트롤의 Hot State

12 Theme 매니저 + Comctl V6  새로운 conctl32 를 활용하는 쉘 및 어플리케이션에 Theme 을 적용  윈도 어플리케이션의 외관을 혁신  공개 API 는 어플리케이션 작성자로 하여금 쉽게 새로운 외관을 구성하도록 한다

13 Theme 매니저 uxtheme.dll  새로운 컨트롤의 랜더링을 담당  컨트롤의 파트를 위치시키기 위한 정보 API 를 제공  모든 어플리케이션의 비클라이언트 영역에 대한 새 비주얼 스타일 랜더링  스크롤 바  타이틀 바  메뉴

14 커먼 컨트롤 (Comctl32.dll V6)  윈도우 컨트롤 ( 버튼, 리스트 박스, 에디트 컨트롤, 등 ) 과 공용 컨트롤 ( 리스트 뷰, 탭 컨트롤, 툴바, 툴팁, 등 ) 이 Comctl V6 에 통합  이들은 Theme 매니저를 이용하여 시각적 랜더링  기존 어플리케이션은 별도의 manifest 를 제공하지 않으면 Comctl v5.8 을 이용  Comctl V6 는 하위버젼에는 탑재되지 않는다

15 동작 원리 ComCtl32 V6 Html Other Applications Luna Theme 매니저 (UxTheme) 미래의 themes? Other Applications 커스텀 컨트롤

16 Theme 매니저를 사용하는 이유  윈도의 외형을 Refresh 할 필요성  Refresh 가 필요한 많은 영역  Comctl, HTML, 커스텀 컨트롤 …  디자이너로 하여금 개발과정과 독립적인 혁신을 이루도록  컨트롤 로직과 컨트롤 디자인의 분리

17 새로운 커먼 컨트롤 사용 이유  상위 목표 : 기존 어플리케이션을 유지  하위 목표 : 소비자의 즐거움을 증대  목표의 충돌  Comctl32 의 요소를 바꾸면 어플리케이션의 균형이 깨짐  병렬 어셈블리 공유를 사용하여 두 목표를 모두 만족  구버젼과 신버젼이 머신에 공존  미래 버젼으로 하여 이전 버젼에 균열이 가지 않는다  어플리케이션은 자신이 시험한 버젼을 사용

18 ComCtl32 V6ComCtl32 V5 DLL Loader SxS Manager 어플리케이션 Manifest 병렬식 동작 원리

19 지원 방법  COMCTL32.DLL 에 링크한다  Manifest 를 이용하여 COMCTL32.DLL 에 대한 종속성을 기술한다  커스텀 컨트롤 및 Owner Draw 컨트롤에 대해 Theme API 를 사용한다  모든것이 잘 동작하는지 시험한다

20 새버젼 컨트롤을 사용하는 Manifest ... Your app description here ... Your app description here    <assemblyIdentity  type="win32"  name="Microsoft.Windows.Common-Controls"  version="6.0.0.0"  processorArchitecture="X86"  publicKeyToken="6595b64144ccf1df"  language="*"  />   ...

21 Manifest 명명  실행 파일 예  c:\Program Files\OutLook Express\msimn.exe.manifest  제어판 예  c:\windows\system32\desk.cpl.manifest  리소스  RT_MANIFEST

22 새로운 아이콘 작업  Gifmoviegear 등의 툴을 이용 http://www.moviegear.com/gmgicon.htm  아이콘마다 9 개의 이미지 제공 : 4bit, 8bit 및 32bit 컬러  파일 아이콘 추천 크기 : 48x48, 32x32, 16x16  툴바 아이콘 추천 크기 : 24x24, 16x16

23 비주얼 스타일 Theme 매니저 커먼 컨트롤

24 병렬식 어셈블리 공유

25 어셈블리  스스로를 설명  하나 이상 DLL 의 집합  명명, 바인딩, 설치의 단위  불변의  수정이 없다

26 사이드 바이 사이드 어셈블리  윈도 XP 가 제공하는 기반 구조  버젼화된 어셈블리  설치 및 저장소  적재  개발자들은 병렬식 코딩을 해야한다  다수의 버젼이 동시에 실행된다

27 공유 병렬식 어셈블리  시스템 관리 폴더에 윈도 인스톨러를 이용하여 설치  윈도 파일 보호에 의해 보호된다  공개키 기반으로 사인되어야 한다  윈도 인스톨러가 없으면 사적으로만 설치된다

28 사적 어셈블리  어플리케이션 아래 설치  해당 어플리케이션에 의해서만 사용  XCopy 나 윈도 인스톨러 등 설치 방법 무관  어플리케이션 내에서 유일한 이름

29 Manifest  어셈블리를 설명  DLL 목록  Win32® 글로벌 등록  윈도 클래스  종속성  설치 및 실행시 사용  XML 양식  별도의 파일 -or- 실행 파일이나 DLL 의 리소스

30 어셈블리 생성 추천 절차  포함할 리소스 결정  복수의 DLL 동시 실행시 서로 영향을 미치지 않도록 설계  서로 영향을 주어서는 않된다  어셈블리 Manifest 생성  공유 어셈블리는  어셈블리를 사인하고 사유키는 보호한다  모든 버젼에 동일 키 사용  시험

31 격리 어플리케이션  Manifest 를 통한 자기 기술  종속성 기술 :  공유 병렬식 어셈블리  사적 병렬식 어셈블리  완전 격리 어플리케이션  모든 종속성이 병렬식  부분 격리 어플리케이션  일부 종속성만이 병렬식

32 윈도 XP 에서 SxS 어셈블리 사용 ComCtl32 V6.0 DLL Loader 어플리케이션 ManifestManifest 병렬식 캐시의 공유 어셈블리 ComCtl32 V6.1 Manifest 사적어셈블리 Manifest 운영체제가 설치 서비스팩이나 윈도 업데이트 혹은 윈도 인스톨러가 설치 Manifest생성 manifest 를 이용하여 활성화 컨텍스트 생성. 적당한 버젼 적재 manifest 를 이용하여 활성화 컨텍스트 생성. 적당한 버젼 적재 공유 및 사적 어셈블리에 대한 종속성 기술

33 윈도 XP 의 병렬식 컴포넌트 윈도 커먼 컨트롤 GDI+ 비주얼 C++ 런타임 라이브러리 버젼 6.0 MFC ATL

34 빠른 사용자 전환

35  기본적으로 프로파일 사용  설치시 혹은 필요에 따라 사용자 계정을 생성  기본적으로 암호가 사용되지 않는다  그림으로 표시된 로그온 화면을 소개  사용자 계정의 추가 / 편집을 위한 제어판  빠른 사용자 전환 가능  복수의 사용자가 동시에 로그온 가능

36 빠른 사용자 전환 사용  어플리케이션이 현재의 데스크톱에 있지 않은 경우 :  프로세서 사용을 최소화  소리를 사용하지 않는다  시스템 자원 사용을 센스있게  서비스는 활성화된 세션에 notify 를 준다

37 어플리케이션의 다른 인스턴스  FindWindow(Ex) 는 단일 세션에서만 동작한다  이벤트, 세마포어, 뮤텍스, waitable timers, 파일 매핑 오브젝트 및 job 오브젝트는 윈도 2000 이상에서 Global\ 혹은 Local\ 을 사용 가능

38 Notification  WTSRegisterSessionNotification  NOTIFY_FOR_THIS_SESSION  NOTIFY_FOR_ALL_SESSIONS  WM_WTSCONSOLE_CHANGE  WTS_CONSOLE_CONNECT  WTS_CONSOLE_DISCONNECT  WTS_REMOTE_CONNECT  WTS_REMOTE_DISCONNECT  WTS_SESSION_LOGON  WTS_SESSION_LOGOFF

39 빠른 사용자 전환 설정 Notification

40 GDI+

41 GDI+ 아키텍처 GDIPlus GDI+ 엔진 2D 벡터 그래픽이미지Typography 시스템 드라이버 GDI DirectX 마이크로소프트.NET 프레임워크 System.Drawing 네임스페이스 Win32 (C++)

42 GDI+ 사용자  윈도 XP  오피스 XP .NET 프레임워크 SDK  System.Drawing 네임 스페이스  플랫폼 SDK  윈도 98 이후 운영체제에서 재배포 가능  비지오 2002

43 2D 벡터 그래픽 기능  풍부한 그래픽  투명도  Gradient 및 texture 칠하기  Linear gradients 및 path gradients  고품질 랜더링  Anti-aliasing  두단계 품질 레벨  플로팅 포인트 좌표

44 2D 벡터 그래픽 코드  Autoshape 을 투명 솔리드 브러시로 칠하기 : // initialize path for Autoshape // and Graphics from HDC Path p; Graphics g; // Create a semitransparent green brush SolidBrush sb = new SolidBrush (Color.FromArgb (128, 0, 128, 0)); g.DrawPath (sb, p);

45  Autoshape 을 Linear Gradient 브러시로 칠하기 : 2D 벡터 그래픽 코드 // Create rectangle to define bounds of linear // gradient brush Rectangle r = new Rectangle (0, 0, 200, 200); // Create a linear gradient brush that shades // vertically from blue to black LinearGradientBrush lgb = new LinearGradientBrush ( rect, Color.Blue, Color.Black, LinearGradientMode.Vertical); g.FillPath (lgb, p);

46 디지탈 이미지 이미지 포맷  이미지 포맷을 인코딩 및 디코딩하는 인터페이스 제공  JPEG, PNG, GIF, BMP, TIFF, EXIF, ICON, EMF, WMF 등을 기본적으로 지원  이미지의 적재 혹은 저장이 한 라인의 코드로 완성

47 디지탈 이미지 이미지 프로세싱  자주 발생하는 작업 지원  회정, 자르기 (crop), 광도 (brightness), 명암 (contrast), 색의 균형 (color balance), 재 색칠 (recolor), gamma  Scaling 에 많은 품질 모드가 적용된다  Bicubic 그리고 High Quality Bicubic  Bilinear 그리고 High Quality Bilinear  Nearest neighbor  손실없는 JPEG 회전

48 이미지 코드  이미지를 bicubic filtering 으로 표시 Image MyPicture = new Bitmap (“MyPicture.png”); // Set filtering mode to the highest possible quality. g.SetInterpolationMode = InterpolationMode.HighQualityBicubic; // Render MyPicture to the rectangle (0, 0, 100, 100) // on the screen. g.DrawImage (MyPicture, new Rectangle (0, 0, 100, 100), 0, 0, MyPicture.Width, MyPicture.Height, GraphicsUnit.Pixel);

49 Typography 기능  윈도 XP 에서 ClearType™ 지원  LCD 에서 문자열 가독성에 300% 향상  Gradient 및 Texture 로 칠해진 문자열  Antialiased 문자열

50 Typography  다국어 지원  유니코드 3.0 표준  윈도 2000 스크립트를 비롯한 지원 ( 예, Arabic, Hebrew, Indic, Syriac, Thai, Thaana…)  언어에 따른 line breaking 엔진 (Far East line breaking 규칙, Thai 는 사전 기반 )  Far East 는 수직 문자열 지원

51 GDI+

52 추가적으로  윈도 로고 프로그램 http://www.microsoft.com/winlogo/  XP 호환성 테스트 http://msdn.microsoft.com/compatibility/  플랫폼 SDK 다운로드 http://www.microsoft.com/msdownload/pla tformsdk/sdkupdate/  오토 플레이 핸들러 msdn magazine, Nov 2001  64 비트 윈도 msdn magazine, Nov 2001

53 © 2001 Microsoft Corporation. All rights reserved.

54


Download ppt "윈도 XP 기반의 소프트웨어 개발 유상열 솔루션 매니저 마이크로소프트 윈도 XP Savvy 어플리케이션  운영체제와 협력하여 최상의 사용자 경험을 제공한다  사용자들은 Savvy 어플리케이션을 윈도 XP 에서 최상의 어플리케이션으로 인식한다  사용자들은 윈도 XP."

Similar presentations


Ads by Google