WhistleStop Tour of Windows XP Mike Burrows Software Design Engineer Microsoft 3rd Party Windows Gam - PowerPoint PPT Presentation

1 / 21
About This Presentation
Title:

WhistleStop Tour of Windows XP Mike Burrows Software Design Engineer Microsoft 3rd Party Windows Gam

Description:

Whistle-Stop Tour. of Windows XP. Mike Burrows. Software Design Engineer ... The most reliable, easiest to use, operating system for retail consumers? ... – PowerPoint PPT presentation

Number of Views:204
Avg rating:3.0/5.0
Slides: 22
Provided by: MikeBu2
Category:

less

Transcript and Presenter's Notes

Title: WhistleStop Tour of Windows XP Mike Burrows Software Design Engineer Microsoft 3rd Party Windows Gam


1
Whistle-Stop Tour of Windows XPMike
BurrowsSoftware Design EngineerMicrosoft 3rd
Party Windows Gamingmikebur_at_microsoft.com
2
Windows XPWhat is it?
  • The OS formerly known as Whistler?
  • The biggest OS release since Windows 95?
  • The most reliable, easiest to use, operating
    system for retail consumers?
  • The best development platform?
  • All of the above?

3
Windows XPAvailable versions
  • Home Edition
  • For general home user
  • Professional
  • For hardcore gamers and developers
  • Server
  • File/Print services, DCs, AD servers
  • Advanced Server
  • Web sites, B2B app. servers
  • Datacenter
  • High availability, mission critical applications

4
Windows XPDifferences between Home and Pro.
  • Professional is superset of Home
  • Adds
  • Multi-processor support
  • Multi-monitor support
  • Remote desktop (Terminal Services)
  • Encrypyed file system
  • Domain join

5
Windows XPWhats new?
  • Absolutely loads of stuff, but most relevant
  • DirectX 8.1
  • Multiple users by default
  • Fast User Switching
  • Much, much, much more similar to Windows 2000
    than Windows 95
  • Security implications
  • Much prettier icons

6
Multiple Users
  • Over 80 share a computer with other family
    members
  • Two (36), Three (18), Four (15)
  • Five and above (11)
  • Yet most users arent enabling profiles
  • People arent getting a personalized experience
  • They cant switch easily between e-mail
    accounts, etc.
  • Alternative solutions like Internet Explorer
    Identities had to be put in place

7
Multiple UsersWhy are people not using Profiles?
  • Users dont know they can do this
  • Windows 98 Profiles are off by default and are
    hard to use
  • Switching users takes too much time and effort
    (designed for Business)
  • Takes several minutes
  • Must close your programs, log off, restart all
    your programs
  • Have to type in user name and password hassle!

8
Multiple UsersHow are we fixing this?
  • Turning on Profiles by default
  • User accounts will be created for everyone
  • By default, passwords will not be required
  • New, much easier, Control Panel to add/edit User
    Accounts
  • Enabling Fast User Switching
  • Multiple users can be running programs at the
    same time
  • Disabled if connected to domain

9
(No Transcript)
10
(No Transcript)
11
Multiple UsersHandling Lost Devices
  • Return Code from Present() and Reset()
  • D3DERR_DEVICELOST
  • HRESULT hRes g_pD3ddev-gtPresent(NULL, NULL,
    NULL, NULL)
  • while(hRes D3DERR_DEVICELOST)
  • while(hRes ! D3DERR_DEVICENOTRESET)
  • Sleep(1000)
  • hRes g_pD3ddev-gtTestCooperativeLevel()
  • hRes g_pD3ddev-gtReset(d3dpp)
  • if(FAILED(hRes))
  • hRes D3DERR_DEVICELOST

12
Multiple UsersOther instances
  • Check for other instances correctly
  • FindWindow(Ex) does not work across sessions
  • Events, semaphores, mutexes, waitable timers,
    file-mapping objects, etc
  • Dont just switch to the previous instance, it
    may be in another session

13
Multiple UsersCheck for other instances
  • BOOL DoIExist(LPWSTR wzMutexName)
  • HANDLE g_hMutexAppIsRunningg_hMutexAppIsRunnin
    g CreateMutex(NULL, FALSE, wzMutexName)
  • // Close handle, returning TRUE if existing
    semaphore opened
  • if (g_hMutexAppIsRunning ! NULL
  • GetLastError() ERROR_ALREADY_EXISTS)
  • CloseHandle(g_hMutexAppIsRunning)return TRUE
  • return (g_hMutexAppIsRunningNULL) // if
    created, return FALSE

14
Multiple UsersSwich to other instance?
  • Check for other instances
  • if ( DoIExist(L"Global\\Super Game") TRUE )
  • HWND hWndMe FindWindow(wzWindowClass,
    wzTitle)
  • if (hWndMe)
  • if (IsIconic(hWndMe))
  • ShowWindow(hWndMe, SW_RESTORE)
  • SetForegroundWindow(hWndMe)
  • else
  • MessageBox(NULL,
  • L"Another User is using this
    Application",
  • wzTitle, MB_OK)

15
Multiple UsersFast User Switching
  • WTSRegisterSessionNotification()
  • Notification of sessions connecting and
    disconnecting, both local and remote
  • When your application is not on the current
    desktop
  • Minimize processor usage
  • Dont update display
  • Dont play sounds

16
Multiple UsersOther things to watch out for
  • Follow the specification for Data and Settings
    Management
  • http//msdn.microsoft.com/certification/appspec.a
    sp
  • Classify and store data correctly
  • Degrade gracefully on Access Denied
  • Support All Users installs

17
Icons
18
Working With New Icons
  • Use tools such as Gif Movie Gearhttp//www.gifmov
    iegear.com/foricons/
  • Provide 9 images per icon 4bit, 8bit and 32bit
    (248) color
  • Recommended sizes48x48, 32x32, 16x16

19
SummaryThe best development platform
  • All the benefits of Windows 2000
  • More drivers available earlier
  • Develop on the same platform as your customers
    use
  • Terminal Services make remote debugging easier
  • You dont have to have a developer system at
    home to work at home.

20
Call To Action!
  • Get on the beta program(if youre not already)
  • Ensure you have Windows XP on at least one of
    your dev machines
  • Let us help test your titles
  • http//msdn.microsoft.com/directx
  • Articles regarding Fast User Switching, security,
    etc. to be posted initially on Windows XP beta
    web site then publicly on release

21
Questions?
?
?
?
?
?
?
?
?
?
?
?
Write a Comment
User Comments (0)
About PowerShow.com