35

Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

Embed Size (px)

Citation preview

Page 1: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!
Page 2: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

Paul FosterDeveloper EvangelistMicrosoft

Windows 7 – Top Features for your Applications

SESSION CODE: W00T!

Page 3: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

3

Building A Great Windows 7 Application Multitouch Windows Ribbon Sensors

Windows Taskbar Libraries Fundamentals

Version Checking User Account Control Removed

Components

Get Compatible

Optimize

Differentiate

Page 4: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

4

Improved Fundamentals

MemoryReference set, Graphics

Disk I/ORegistry Reads, Indexer

PowerDVD Playback, Panel, Timers

SpeedFaster Boot, Device Ready

ResponsivenessStart menu, Taskbar

Scale256 cores

IncreaseDecrease

Page 5: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

5

AgendaAgenda Subtitle

The importance of looking modernTaskBarJumplistsRestart and recovery

Context AwarePerformance and EfficiencySensorsLocation

Page 6: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

The Importance of looking modern

Page 7: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

7

Few Changes: Most software that runs on Windows Vista® will run on Windows® 7 – exceptions will be low-level code (AV, Firewall, Imaging, etc.).

Hardware that runs Windows Vista well will run Windows 7 well.

Few Changes: Focus on quality and reliability improvements

Windows 7 Builds on Windows Vista

Deep Changes: New models for security, drivers, deployment, and networking

Page 8: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

8

What is Code Pack?Managed class library to access to Win 7 features

Windows Shell namespace Windows Vista and Windows 7 Task Dialogs.Support for Shell property systemTaskbar Jumplists, Icon Overlay and Progress barCommon file dialogsDirect3D 11.0 and DXGI 1.0/1.1 APIs Sensor Platform APIs Extended Linguistic Services APIs

http://code.msdn.com/windowsAPICodePack

Page 9: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

Gap filler

Page 10: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

10

The New Windows 7 TaskbarEvolution of launch surfacesClean, sleek, elegant designEnhances user productivity, making switching between windows much easierWhat users do most they can reach quickestInformation is always present

Page 11: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

11

Windows 7 Taskbar – Jump Lists

Mini Start Menu for your programAccess to key destinations and tasksCustomizable

Page 12: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

12

Destinations(“nouns”)

Tasks(“verbs”)

Known categories

Custom categories

User Tasks

Taskbar Tasks

Pinned category

Windows 7 Taskbar – Jump Lists

Page 13: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

13

Taskbardemo

Page 14: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

14

Windows 7 Taskbar – Icons

Face of your programLarge and small iconsOnly customer can pinColor hot-track

Icon OverlayBest place for notificationsAppears over your program’s large icon

Progress barBest place for updates on progressAppears on your taskbar button

Page 15: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

15

Windows 7 Taskbar – Thumbnails

Remote-control for a windowFor vital commandsAccessible from taskbar thumbnail Up to seven buttons

Page 16: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

16

Taskbardemo

Page 17: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

17

Windows 7 Taskbar and WPF 4

XAML support for JumpListsSupported

Overlay Icons and Progress BarJumpListsThumbnail Toolbars

Not SupportedCustom thumbnail and thumbnail PreviewThumbnail clipping

Page 18: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

18

Taskbar using XAML

<JumpList.JumpList> <JumpList> <JumpTask ApplicationPath="notepad.exe" CustomCategory="External Tools" Description="Take Notes" Title="Start Notepad" IconResourcePath="notepad.exe" IconResourceIndex="0" /> <JumpTask ApplicationPath="calc.exe" CustomCategory="External Tools" Description="Perform some calculations" Title="Start Calculator" IconResourcePath="calc.exe" IconResourceIndex="0" /> </JumpList></JumpList.JumpList>

Page 19: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

19

Register for RecoveryChance to save your information on another threadOS calls your code for you

Register for RestartOS will run your app again (with a hint) after it dies

Restart and Recovery

Page 20: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

20

Restart and Recoverydemo

Page 21: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

Context Aware

Page 22: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!
Page 23: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

X

Page 24: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

24

Power ManagementIs the machine running on battery?What can your application do to extend battery life?

Autosave less frequentlyAutosave before critical battery reached

Scale back the user experienceGraphics richnessReduce the frequency of data updatesStop spinning the CD for sound effects access

Reduce CPU work loadsNumber of threads, thread prioritiesUse hardware (not software) rendering for graphics

Turn off or constrain background processingDefer unnecessary tasks

Page 25: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

25

Power Managementdemo

Page 26: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

26

Windows Sensor and Location PlatformDevelop better and more productive

user experiences Enable environmentally based applications

Uniform APIs for working with sensors

No need to target vendor-specific APIsConsistent interface for sensors, extensions for locationAccess control and privacy

Application

Sensor API

Sensor Device

UMDF Driver

Page 27: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

27

Windows 7 Sensor PlatformC++ Sensor App

Sensor API

C++ Sensor App

Sensor Devices

Windows 7Sensor andLocation Platform

Applications

Sensor MCU

Sensor Driver

Sensor Class Extension

Sensor MCU

Sensor Driver

Accelerometer Ambient Light Sensor

Page 28: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

28

Sensorsdemo

Page 29: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

29

Windows 7 Location Platform

Default WANGPS Lookup

Location GadgetC++ Location App

LocationSensors

Windows 7Sensor andLocation Platform

Applications

Win32 COM IDispatch

Location API

Sensor API

Page 30: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

30

.NET 4 Location API

Default WANGPS Lookup

.NET Location APP

Windows 7 Location API

.NET Location APP

LocationSensors

Windows 7Location API

.NET Applications

.NET 4 Location API.NET Framework

Sensor API

Page 31: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

31

Location APIdemo

Page 32: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

32

Q2 / Q32010

Ver 2.0Expanded Shell

API coverageVer 1.5

Fundamentals

June2010

Ver – 1.0.1Bug-fixes

Nov2009

Ver - 1.0Initial release

Aug2009

Ver - 0.9Preview

June 2009

Windows API Code Pack Roadmap

Page 33: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

33

Code PackGets managed developers working on Windows 7 NOW

WPF or WinformsC# or VB

Not the only way to get thereSome of this is coming in WPF (.NET 4)You could do your own interop – but why?Others have written other wrappers

Documentation and samplesDiscussions on Code GalleryIf you need to change or redistribute, you can

http://code.msdn.com/WindowsAPICodePack

Page 34: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED

OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Page 35: Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!

35

Related Content

Breakout sessions

Breakout sessions

Breakout sessions

Breakout sessions