<<

Customizing the First Experience and ™ Extensibility

Mikael Nyström – TrueSec MVP Windows – 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 - Properties Security (Credential Providers) Explorer Media Center Player Online Photo Printing Windows Sidebar Windows Sideshow Sync Center Power Management Performance Help & Support Windows Recovery Environment Third-Party Application Defaults (defined in OPK) New Improved Extensibility – System Fundamentals

System Control Panel:

(All in -Windows--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 | 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 to associate with the in the Favorites folder. FavID Specifies 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 to the URL of each shortcut. Mandatory – Create one folder, using \ in FavTitle Extensibility – Internet

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 Guide Toolbar Add a toolbar (also known as a Browser Helper Object)

* For Beta 2, use IEAK for these ; 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%\\\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 : 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 :

Application has to register as a handler for a file type Three installable handlers per 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

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 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 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\\oobe.xml Country and language-specific OOBE.XML:

\windows\system32\oobe\info\\\oobe.xml

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: 244 GEOID value, in decimal Reference: http://msdn.microsoft.com/library/default.asp?url=/library/en- us/intl/nls_locations.asp

Locale: 1033 LCID value, in decimal Reference: http://www.microsoft.com/globaldev/reference/lcid-all.mspx

Keyboard: 00000409 Input Locale Identifier format Reference: HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Keyboard Layouts

Logo: c:\logo\fabrikam.png Full path to the logo file on the hard disk First Experience – Windows Welcome First Experience – Windows Welcome

License Terms:

fabrikam_eula.rtf Windows Welcome searches for your end-user license agreement based on location/language choice If not found for a specific country, Windows Welcome uses the one in the \info folder Note: We will be adding a \default folder with subfolders to accommodate localized license agreements in the fallback case First Experience – Windows Welcome First Experience – Windows Welcome

Desktop backgrounds:

c:\Fabrikam\picture1.bmp c:\Fabrikam\picture2.bmp c:\Fabrikam\picture3.bmp

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:

special offers from Fabrikam

40 characters

Offer :

Or

One node for each offer Determines the type of offer displayed Types cannot be mixed First Experience – Windows Welcome

Title:

2 months free access!

64 characters

Image:

c:\fabrikam\isp_logo.png

32x32 PNG file First Experience – Windows Welcome

Description:

Sign up today!

128 characters

Details file: (list type only)

c:\fabrikam\info.rtf

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)

c:\isp\start.exe

Full path and filename of program to launch First Experience – Windows Welcome

Testing Windows Welcome /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” “ 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\\oobe.xml

Country and language-specific OOBE.XML: \windows\system32\oobe\info\\\oobe.xml First Experience – Welcome Center

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: Offers From Fabrikam Contains the text used as the header for your tasks Task: ID attribute needs to be set to a GUID (unique per task) Reference: http://msdn2.microsoft.com/en- us/library/ms241442.aspx Do not modify the xmlns attribute First Experience – Welcome Center

Task name: Get 6 months of Internet access free Name of the task; appears in the title section of the preview pane, and in the list view Task icon: %systemroot%\system32\oobe\phone.ico Can be: Icon associated with the executable specified in Command An icon contained within a dll (for example: “Shell32.dll,233”) A .ico file Task description: Unlimited dial-up Second line of text in the task list view Command: http://www.thephonecompany.com Command-line that is run when double-clicking the task or clicking the link in the preview pane First Experience – Welcome Center

Sort order (optional) 1 Specifies the order of appearance in the Welcome Center

Infotip (optional) Sign up now! Tooltip that appears when hovering over a task

Search keywords (optional) Internet;Telephone Terms to aid in searching within the Welcome Center First Experience – Welcome Center

Preview Pane background: c:\fabrikam\bg1.png 800x178 PNG file; picture will stretch based on size

Preview Pane picture: c:\fabrikam\pic1.png 128x128 PNG file If omitted, task list icon is used

Preview pane title: Get six months of free Internet service

Action link text: Sign up now! Maximum length: 255 characters First Experience – Welcome Center

Preview Pane columns: and Can use either one or two columns Additional text formatting: Paragraph: Bullets: Text: Example:

Sample bulleted text> Sample unbulleted text> First Experience – Welcome Center

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:

First Experience – Welcome Center

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