Title: Certified for Windows Vista
1Certified for Windows Vista
2Introducing the Windows Vista Logo Programs
3Goals of theLogo Programs
- Rapid Windows Vista adoption
- Profitable development platform
- Competitive differentiation
- Partner support
4Certified for Windows Vista
- Increase the quality of applications
- Increase customer confidence
- Differentiate your product
- Harness Microsoft marketing power
- Associate with an instantly recognized brand
- Meet enterprise, corporate, and retail purchasing
criteria - Access resources that reduce development costs
5The Certification Process
Build / Learn
Test
Market
6Test Cases
Security and Compatibility
Install and Uninstall
Machine Setup and Configuration
7Additional Resources
- Innovate on the Windows Vista platform portal
- http//microsoft.mrmpslc.com/InnovateOnWindowsVist
a/Default.aspx?LangType1033 - Certified for Windows Vista requirements
- http//download.microsoft.com/download/8/e/4/8e4c9
29d-679a-4238-8c21-2dcc8ed1f35c/Windows20Vista20
Software20Logo20Spec201.1.doc - Certified for Windows Vista test cases
- http//download.microsoft.com/download/a/5/d/a5d3d
02a-fd03-466f-9ba8-97f5e7a90a98/CertifiedforWindow
sVistaProgramTestCases.doc
8Windows Server 2003 R2 Platform SDK
- Contains tools developers can use for
- Cryptography
- Debugging
- File management
- Performance
- Resources
- Testing
- Can be used to develop 32- and 64-bit applications
9Installation Requirements
10Installation Requirements
- Use Windows components for installation
- Support User Account Control for installation
- Install to correct folders
- Sign ClickOnce manifests
- Keep ClickOnce installations isolated
- Correctly configure package identity
- Install Windows resources properly
- Follow best practices for creating custom actions
- Avoid reboots during installation
- Support command-line installation
- Follow component rules
11Installation Options
- Applications must use Windows Installer (MSI) or
ClickOnce for installation - Follows good setup design
- Are safer
- Evolves with operating system
- Preferred by enterprise customers
12Restart Manager
- Check if files that require updating are in use
- Shut down applications, apply the update, restart
- Applications listen to shutdown messages, and
save state without prompting user - Applications restart as if they were never shut
down - If system restart is unavoidable, schedule to
minimize disruption
13Installing to Correct Folder Locations
- Applications installed to Program Files or
AppData - User data written at first run
- Users given location flexibility
- Managing shared components
- New folder hierarchy
14Installation Test Cases
- Verify application installer uses Windows
Installer - Verify applications MSI installer does not
receive any errors from the Internal Consistency
Evaluators - Verify applications installer contains an
embedded manifest - Verify application launches with installed user
token - Verify application installs to the correct
folders by default
15Installation Test Cases
- Verify the application rolls back the install and
restores machine to previous state - Verify the application does not force a restart
during install - Verify the application properly handles files in
use during install - Verify the application can be installed quietly
from the command line
16Compatibility and Interoperability Requirements
17Compatibility and Interoperability Requirements
- Support x64 Versions
- Sign files and drivers
- Perform version checking properly
- Support concurrent user sessions
- Avoid loading services and drivers in safe mode
- Follow anti-malware policies
18Signing Files
- Ensures files have not been tampered with
- All executable files must be signed with an
Authenticode certificate - Code-signing certificates are available from
several vendors - Use the SignTool in the Windows SDK to sign files
19Version Checking
- Allows application to be used in future versions
- Check for desired version number
- Do not check CurrentVersion in registry
- If EULA prohibits use on future operating
systems, fail gracefully - GetVersionEx
- Version-checking API
- Check for capabilities rather than version
- Windows build team recommendation
- VerifyVersionInfo
- Environment.Version property
20Fast User Switching
- Multiple users can log on
- Switches quickly between open accounts
- Does not change application state
- Uses Terminal Services technology
21Compatibility and Interoperability Test Cases
- Verify application installer
- Does not have a 16-bit installer
- Does not use or rely on 16-bit code or components
- Does not attempt to install any non-64-bit
drivers on x64 versions of the Windows operating
system regardless of whether application is a
Win32 application or is native to 64-bit
22Reliability Requirements
23Windows Error Reporting
- Mini-dump of crash reported to Microsoft
- ISVs access crash data through Developer Portal
- Clients that crash in the future are directed to
the solution
24Windows Error Reporting Requirements
- Do not disable WER
- Sign up to receive crash data
- Map applications to company
- ISVs MUST fix 60 of crash volume
- ISVs MUST maintain an average fix rate of 10
buckets per month - ISVs can issue patches and service packs through
the Windows Developer Portal