Customizing the First Experience and Windows Vista™ Extensibility
Mikael Nyström – TrueSec MVP Windows Server – Setup/Deployment Agenda
Opportunities for Extensibility First Experience: Windows Welcome First Experience: Welcome Center What is not discussed in this session: Media Center Help Windows Recovery Environment (Windows RE) Extensibility that requires app development All details are in the OPK User’s Guide Key Extensibility Opportunities…
Monetization Differentiation Cost Reduction Windows Welcome Welcome Center Get Connected Wizard - Narrowband Dialup Get Connected Wizard - Wireless Properties Security (Credential Providers) Internet Explorer Media Center Windows Media Player Windows Photo Gallery Online Photo Printing Windows Sidebar Windows Sideshow Windows Mobility Center Sync Center Power Management Performance Control Panel Help & Support Windows Recovery Environment Windows Anytime Upgrade Third-Party Application Defaults (defined in OPK) New Improved Extensibility – System Fundamentals
System Control Panel:
(All in Microsoft-Windows-Shell-Setup | OEMInformation) Mandatory Information: Manufacturer Name Optional Information: Manufacturer Logo Support URL* Mandatory for single-language, single-location: SupportPhone* SupportHours* HelpCustomized* For multi-language or multi-location releases, help content must be modified. (See Help and Support Lab)
* Unattend.xml information coming soon Extensibility – System Fundamentals
Performance Control Panel:
Proseware, Inc
* Unattend.xml information coming soon Extensibility – Internet
Internet Explorer:
Home Page: Microsoft-Windows Internet Explorer | Home_Page Online Support link: Microsoft-Windows Internet Explorer | Help_Page Favorites: Microsoft-Windows Internet Explorer | FavoritesList Microsoft-Windows Internet Explorer | FavoritesList | FavoriteItem FavIconFile Specifies the icon to associate with the shortcut in the Favorites folder. FavID Specifies a unique key to associate with a FavoriteItem. FavOffline Specifies whether to make the shortcut link available for offline browsing. FavTitle Specifies a friendly name for the site appearing as a shortcut in the Favorites folder. Must include folder name. FavURL Specifies a fully qualified path to the URL of each shortcut. Mandatory – Create one folder, using
Internet Explorer:
Feeds Can add a folder with RSS feeds Tabs: Can add extra tabs by default (recommended < 3) Search: Replace the default search provider Add more search providers Replace the Windows Search Guide Toolbar Add a toolbar (also known as a Browser Helper Object)
* For Beta 2, use IEAK for these settings; Unattend.xml information coming soon Extensibility – Internet
Windows Media Player:
Online Store: Install ServiceInfo.xml (obtain from online store provider) Use Windows Media configuration utility (setup_wm.exe) to set the following values: DefaultService ServiceInfo ServiceExtra Custom Skin: Use Windows Media 11 SDK to create the skin Copy skin to %systemdrive%\Program Files\Windows Media Player\Skins folder Default DVD Player: In HKEY_CLASSES_ROOT\DVD\Shell\Play\Command Change “default” value to "%systemdrive%\Program Files\Windows Media Player\wmplayer.exe" /device:DVD "%L" Extensibility – Internet
ISP Sign-up:
Uses OOBE.XML Offers are identical to “list”-type Windows Welcome offers Use ShowIn value to specify where the offer is displayed: OOBE – offer is visible only in Windows Welcome GCW – offer is visible only in the Internet Sign-up wizard Both – offer is visible in both Windows Welcome and the Internet Sign-up wizard
*For Beta 2, this feature is implemented in GCW.XML (not discussed in detail in this presentation) Extensibility – Internet
Online Print Wizard:
Set a service provider as default: Microsoft-Windows-shwebsvc| ID Name of the provider (not displayed) Microsoft-Windows-shwebsvc| DisplayName Name of the provider (displayed) Microsoft-Windows-shwebsvc| Description Description of provider (80 chars) Microsoft-Windows-shwebsvc| href URL to provider’s site Microsoft-Windows-shwebsvc| Icon Path and filename of icon for the provider Extensibility – Applications
Start Menu:
Add items to the Start Menu: Microsoft-Windows-Shell-Setup | StartPanelLinks | MFULink0 Microsoft-Windows-Shell-Setup | StartPanelLinks | MFULink1 Microsoft-Windows-Shell-Setup | StartPanelLinks | MFULink2 Microsoft-Windows-Shell-Setup | StartPanelLinks | MFULink3 Each setting contains the full path to a .LNK file Extensibility – Applications
CD Autoplay:
Application has to register as a handler for a file type Three installable handlers per media type Extensibility – Applications
Sidebar:
Add gadgets to the gallery Show two gadgets on the sidebar
Resources available to help you build gadgets Gadget deployment information is coming soon Extensibility – Mobile Computers
Mobility Center:
OEM
OEM PC Checkup
* For more information, see Mobility Center SDK in the OPK * Unattended deployment information is coming soon Extensibility – Mobile Computers
Power options:
Customize power plans Use Device Power Policy Engine to create plans Add links Unattend.xml information coming soon Add images for power buttons and activities Additional Resources
OPK User’s Guide “Summary of Allowable Customizations” topic Gadgets: http://microsoftgadgets.com/Build Application Extensibility: http://msdn.microsoft.com/library/default.asp?url=/library/en- us/shellcc/platform/shell/programmersguide/shell_basics/shell_basics_extending/aut oplay/autoplay2k_using.asp Mobility SDK in OPK User’s Guide For multi-language or multi-location releases see Help and Support Customization lab and the Help and Support SDK (on the OPK Fest event CD) First Experience – Windows Welcome First Experience – Windows Welcome
You can:
Set default values Language Location Locale Keyboard layout Time Zone Add your end-user license agreement (EULA) Add logo and name branding Add desktop backgrounds Add offer advertising First Experience – Windows Welcome
The OOBE.XML file contains custom content for Windows Welcome, Welcome Center, and Internet Sign-up
Simple .xml file Can be edited using any text or XML editor Separate OOBE.XML files used for country- and language-specific content First Experience – Windows Welcome
Collateral needed:
Manufacturer name Logo file (240x100, 32-bit PNG) Three desktop backgrounds (1600x1200, 24-bit JPG) Default values: Location (GEOID) Locale (LCID) Keyboard Layout Time Zone Offer collateral- for each offer: Title (64 characters) Descriptive text (128 characters) Image (32x32, 32-bit PNG) Details file (RTF file) Command line to execute (if necessary) First Experience – Windows Welcome
Folder structure:
Default OOBE.XML:
\windows\system32\oobe\info\oobe.xml
Country-specific OOBE.XML:
\windows\system32\oobe\info\
\windows\system32\oobe\info\
Country: GEOID, decimal format (example: 39) Language: LCID, decimal format (example: 1033) First Experience – Windows Welcome
Questions to ask before beginning:
“Am I shipping to multiple countries?” If Yes: multiple oobe.xml files are likely
“Am I deploying multiple languages?” If Yes: multiple oobe.xml files are very likely
“What should I promote in Windows Welcome?” If one type of offer (such as ISP) with multiple providers, consider the “list” type of offer If just communicating information, consider the “billboard” type of offer First Experience – Windows Welcome First Experience – Windows Welcome
Language: Default is the language used to run Setup
Location:
Locale:
Keyboard:
Logo:
License Terms:
Desktop backgrounds:
Backgrounds displayed left to right, in order they appear in XML. If user clicks Next without choosing a specific background, the first custom desktop background is selected by default. (not yet implemented) First Experience – Windows Welcome First Experience – Windows Welcome
Two offer presentation formats:
“Billboard” Two non-actionable regions to display information Use to communicate information, show varying types of offers “List” Many items in a list User can select one, it runs upon reaching the desktop Use for similar offers (for example: multiple ISP providers) XML is shared with Internet Access Sign-up wizard First Experience – Windows Welcome
Offer header:
40 characters
Offer node:
One node for each offer Determines the type of offer displayed Types cannot be mixed First Experience – Windows Welcome
Title:
64 characters
Image:
32x32 PNG file First Experience – Windows Welcome
Description:
128 characters
Details file: (list type only)
Points to an optional details file File must be rich-text format Displayed in a custom viewer First Experience – Windows Welcome
Program to run: (list type only)
Full path and filename of program to launch First Experience – Windows Welcome
Testing Windows Welcome Sysprep /oobe \windows\system32\oobe\msoobe.exe Additional info: To reboot into Audit mode, press CTRL-SHIFT-F3 on the first page of Windows Welcome Welcome Center First Experience – Welcome Center
You can:
Add “tasks”. A task: Is a shortcut to an application, web site, help content, etc. Can show a rich preview pane with additional information Add text to the header for your tasks For example: “Special offers from Fabrikam” “Computer Details” preview pane shows logo, manufacturer First Experience – Welcome Center
Use OOBE.xml for all custom content
Task collateral can be per-country/region Task collateral can be localized Welcome Center looks for content in the same manner as Windows Welcome: Default OOBE.XML: \windows\system32\oobe\info\oobe.xml Country-specific OOBE.XML: \windows\system32\oobe\info\
Country and language-specific OOBE.XML: \windows\system32\oobe\info\
Collateral needed:
Header text For each task: Identifier (GUID) Name Icon Description Command Infotip Search keywords Preview pane background Preview pane image Preview pane text (in columns, with formatting) Conditions for filtering tasks First Experience – Welcome Center
Questions to ask before beginning:
“Do my tasks need to be location-specific?” If Yes, then multiple OOBE.XML files are needed “For each task, do I want to specify conditions to filter the task in/out?” For each important scenario, determine whether tasks are seen and the priority of the task First Experience – Welcome Center
Offer header:
Task name:
Sort order (optional)
Infotip (optional)
Search keywords (optional)
Preview Pane background:
Preview Pane picture:
Preview pane title:
Action link text:
Preview Pane columns:
Conditions: Used to filter tasks in or out Cumulative – Welcome Center uses the sum of the conditions Can be inverted using invert=“true” attribute
Example: to display a task in all SKUs but Windows Vista Ultimate, use the following:
Condition Parameters Values Description RegvalEquals 1. Regkey 1. Registry key Registry value is 2. Regval path the expected value 3. RegvalExpected 2. Registry value name 3. Expected value RegvalExists 1. Regkey 1. Registry key Registry value 2. Regval path exists 2. Regkstry value name RegkeyExists 1. Regkey 1. Regkstry key path Registry key exists
IsMachineOnDomain None None Computer is part of a domain IsUserAdmin None None User is an administrator IsAuxDisplayConnected None None Auxiliary display (sideshow) is connected First Experience – Welcome Center
Condition Parameters Values Description IsMobilePC None None Computer is a mobile PC IsOfflineFilesEnabled None None Offline Files has been enabled SkuEquals 1. Sku 1. Sku Name (see Windows SKU docs for values) IsTabletPC None None Computer is a tablet PC IsTouchAvailable None None Computer has a touch digitizer DateInRange 1. Before 1. Date and time Set up a date 2. After 2. Date range (use invariant local date format – 1/1/1977 5:00 AM) Welcome Center with offers With offer selected