Create a Thin Client-Style Device (Standard 8)

7/8/2014

Learn how to create a Windows Embedded 8 Standard (Standard 8) thin client-style image, then capture and deploy that image to a device.

Introduction

A thin client computer is a dedicated device that provides access to a service or information. For example, a thin client might be machine terminal that provide access to server functionality, an airport check-in terminal, or a device that enables customers to set up and access a wedding registry. Thin clients may be accessible by a multiple number of people, so it can be important that thin clients lock down access to system services or features that could leave the thin client in a state that is unusable for the next user. Branding is also often important for thin clients, as the thin client may be a customer facing representative of a company. Thus, you might decide that you want to reduce the number of Windows brand elements that are visible during normal operation of the thin client, making your own brand elements visible instead.

A thin client can have various methods of user input. Touch screens are becoming more common, but most thin clients also have keyboards. Some thin clients may have mice, trackballs, or other navigation peripherals attached. A thin client can even use a camera tracking system and/or a voice recognition service, such as Microsoft Kinect, as part of the user interaction.

Lab Exercise Purpose

In the previous lab, Create a Sample Windows 8 App, you created a Windows 8 app that works as a basic thin client interface. In this lab, you use that app as the primary user interface as you build and deploy a Windows Embedded 8 Standard (Standard 8) OS for a thin client device, while locking down system features and services that could place the thin client in an unusable state. The lab also includes steps for reducing the number of Windows brand elements that thin client users encounter.

Overview of Steps

In this lab, you will create an image for a thin client style device, and capture a deployable image. You will then apply the deployed image to the target device and configure your final device.

  • Step 1: Create and Build a Sample Windows 8 App
    Create and build a sample thin clent Windows 8 app.
  • Step 2: Create a New Configuration File Based on the Retail Template
    Create a new configuration file by using Image Configuration Editor (ICE) to open the retail template.
  • Step 3: Add Drivers Required by your Device
    Add drivers required by your device to your configuration file.
  • Step 4: Add Branding Features to your Configuration File
    Add Unbranded Boot, Custom Logon, Windows 8 Application Launcher, Unbranded Screens, and the English language pack to your configuration file.
  • Step 5: Configure Startup and Logon Features
    Configure Unbranded Boot and Custom Logon.
  • Step 6: Configure Lockdown Features
    Configure Gesture Filter, Keyboard Filter, and UWF.
  • Step 7: Configure Your Image to Start in Audit Mode
    Configure your device to start up in audit mode the first time it starts.
  • Step 8: Add Dependencies, Validate, and Save Your Configuration File
    Add any dependent modules required to support the functionality you have selected, and save the configuration file.
  • Step 9: Create an Unattend File for Deployment
    Create an unattend file for deployment.
  • Step 10: Create User Accounts
    Create a general user account and an administrator account.
  • Step 11: Configure Automatic Logon
    Configure your device to automatically start up into the administrator account after setup is complete.
  • Step 12: Configure Windows 8 App Launcher
    Configure Windows 8 Application Launcher to launch the Windows 8 app for the general user account.
  • Step 13: Add post deployment commands
    Add post deployment commands to register a developer license, configure automatic logon, and enable UWF on your deployed device.
  • Step 14: Add a Product Key and save your unattend file.
    Provide the product key for the image when you deploy it.
  • Step 15: Start Image Builder Wizard on Your Device
    Start IBW on your device.
  • Step 16: Deploy the OS Image to your Device
    Use IBW to deploy your configuration file on your device.
  • Step 17: Provision Your Windows 8 App in Audit Mode and Generalize Your Image
    Boot into audit mode, provision your Windows 8 app, and use Sysprep to generalize your image for deployment.
  • Step 18: Capture the Windows Image for Deployment
    Capture a Windows Image Format (WIM) of your image for deployment.
  • Step 19: Deploy the Windows Image to a Target Device
    Configure your target device and deploy your captured WIM file to it.
  • Step 20: Complete Setup on the Target Device
    Complete setup and configuration on your target device.
  • Step 21: Verify that the device is functioning correctly
    Verify that the final device is working correctly.

Prerequisites

To perform the steps in this lab exercise, the following are required:

Required Hardware

Your development computer and your device must meet the minimum hardware requirements:

Required Software

The following software is required:

  • The Windows Embedded 8 Standard (Standard 8) Toolkit disk
  • If your device can boot from a DVD drive, the Standard 8 Bootable IBW disk appropriate for the architecture (x86 or x64) of your device.
  • If your device cannot boot from a DVD drive, a USB flash drive that is formatted as a bootable Image Builder Wizard (IBW) image.

Required Lab Exercises or Knowledge

The following lab exercises must be completed before you begin this lab exercise:

Knowledge of the following is recommended before you begin this lab exercise:

Step 1: Create and Build a Sample Windows 8 App

In the step, if you have not already done so, you will create and build a sample Windows 8 app. The sample app includes code that enables a user to break out of the locked down experience and exit the app by pressing a Logout button in the app. This enables an administrator to log into an administrator account in order to service or modify the device.

You can use your own Windows 8 app instead, but you may need to modify some steps of this lab to make it work with your app. You will also need to identify the Application User Model ID (AUMID), the unique id that the system uses to identify your app, of your Windows 8 app.

To prepare your Windows 8 app

  1. Follow the instructions in the following lab to create an app package for a sample app: Create a Sample Windows 8 App

  2. Copy the app package folder to a USB flash drive or to a network location that is accessible by your device. If you followed the steps in Step 3: Create the App Package of the sample app lab, the app package folder should be named TCSampleApp_1.0.0.0_AnyCPU_Test.

  3. Record the AUMID from Step 4: Identify the Application User Model ID (AUMID) in the sample app lab for use when configuring Windows 8 Application Launcher later on in this lab.

    If you are using a different Windows 8 app, you will need to use the correct AUMID for your app.

Step 2: Create a New Configuration File Based on the Retail Template

In this step you will use ICE to create a new configuration file based on the Retail template. A configuration file stores the choices you make about what functionality to include in your OS image. You will then take steps to prevent the retail template from being overwritten.

To open the retail template

  1. On Start, click All Programs, click Windows Embedded 8 Standard, and then click ICE .

  2. On the File menu, click Open Configuration File.

  3. In the file picker, navigate to your catalog, for example, C:\Windows Embedded Catalog\6.2\9200.16384, then do one of the following:

    • For a 32-bit architecture, navigate to \x86\Templates\IBW
    • For a 64-bit architecture, navigate to \x64\Templates\IBW
  4. Select Template Device Retail.xml, and then click Open.

  5. Click OK to associate the template with the current default catalog.

    A new configuration file containing a set of modules defined for a retail device becomes visible in the Configuration File pane.

  6. To prevent overwriting the retail template, save the configuration file to a different file by doing the following:

    1. On the File menu, click Save Configuration File As….

    2. Click Yes to continue even though the configuration file contains validation errors.

    3. In the Save dialog box, navigate to a location that you can access from your device, such as a USB flash drive or a network share.

    4. Enter LabTCConfig as the file name, and click Save.

Step 3: Add Drivers Required by your Device

In this step, you install drivers that you need to run your OS image on your device. You run Target Analyzer Probe (TAP) on your device to detect the drivers that your device needs.

To run the TAP tool

  1. To start IBW on your device, do one of the following:

    • Run setup.exe from the version of the Standard 8 IBW DVD (x86 or x64) that matches the architecture of your device.

    • If your device cannot boot from a DVD, boot your device by using the USB flash drive that you prepared in Get Started with Standard 8.

      Tip

      To boot from a USB flash drive, you may need to adjust the BIOS settings on your device to boot from a USB device.

  2. In IBW, click Launch WinPE Command Prompt. A command prompt window appears.

  3. Prepare a location where you can save the .PMQ file. If you booted using the Standard 8 IBW DVD, prepare a network location or insert a USB flash drive to store the .PMQ file on.

  4. From the command prompt, run the TAP tool by using the following command:

    \sources\Tap.exe /o <PMQDrive>:\devices.pmq
    

    The list of devices that TAP discovers on your device will be stored in the devices.pmq file at the location specified by the /o parameter in the command above.

To import the device description file into ICE

  1. On your development computer, on the ICE main menu, click File, click Import, and then click Import PMQ.

  2. Navigate to the location where you saved the devices.pmq that you created above, select the devices.pmq file, and click Open to import it into your configuration file.

    A Driver node will appear in the Configuration File pane containing the information about the devices that will be supported on the device.

Step 4: Add Branding Features to your Configuration File

In this step you will add the features of the OS necessary to enable an unbranded or custom-branded device experience. The features added in this step enable your device to boot, logon, and launch the specified app with minimal Windows branding showing through your device experience.

To add branding features to your OS image

  1. In ICE, in the Catalog pane, expand Features, and then expand Branding.

  2. Right-click Custom Logon, and select Add to Configuration file.

  3. Right-click Unbranded Boot, and select Add to Configuration file.

  4. Right-click Unbranded Screens, and select Add to Configuration file.

  5. Right-click Windows 8 Application Launcher, and select Add to Configuration file.

  6. Under Features, expand Language Modules, and then expand the Languages node.

  7. Right-click English, and select Add to Configuration file.

    Note

    You can select any language that is available instead of English.

  8. In the Configuration File pane, right-click Branded Screens, and select Delete.

  9. Click Yes to confirm that you want to delete Branded Screens.

Step 5: Configure Startup and Logon Features

In this step you will configure the Custom Logon and Unbranded Boot features to remove Windows branding elements during device startup and on the logon screens.

To configure startup and logon features

  1. In ICE, in the Configuration File pane, expand Features, expand Branding, and then click Custom Logon.

  2. In the Settings and Properties pane to the right of the Configuration File pane, click the Settings tab.

  3. In the Settings pane, in the Filter view by list, select 2 Offline Servicing.

  4. In Settings pane, double-click Branding Neutral.

  5. Enter 1 in the Value field to disable all logon screen UI elements, and press Tab.

  6. In the Configuration File pane, click Unbranded Boot.

  7. In the Settings pane, in the Filter view by list, select 2 Offline Servicing.

  8. In the Settings pane, double-click CrashDumpEnabled.

  9. In the Value field, enter 1 to enable full crash logging, and press tab.

Step 6: Configure Lockdown Features

In this step you will configure the Gesture Filter, Keyboard Filter, and the UWF features so that your customers cannot break out of the device experience by using standard Windows 8 gestures or keyboard commands. You will also configure Keyboard Filter so that no keys are blocked when an administrator is using the device.

Note

There is no similar setting for Gesture Filter, so administrators will not be able to use edge gestures while servicing the device.

You will also configure UWF so that all drives are protected once UWF is enabled, to add additional protection to your device.

To disable Windows 8 edge gestures

  1. In ICE, in the Configuration File pane, expand Features, expand Lockdown, and then click Gesture Filter.

  2. In the Settings and Properties pane to the right of the Configuration File pane, click the Settings tab.

  3. In the Settings pane, in the Filter view by list, select 2 Offline Servicing.

  4. In the Settings pane, double-click DisabledEdges.

  5. Enter 255 in the Value field to disable all Windows 8 edge gestures, and press enter.

To lock down keyboard combinations

  1. In ICE, in the Configuration File pane, expand Features, expand Lockdown, and then click Keyboard Filter.

  2. In the Settings and Properties pane to the right of the Configuration File pane, click the Settings tab.

  3. In the Settings pane, in the Filter view by list, select 2 Offline Servicing.

  4. For each of the following settings, in the Settings pane, double-click the setting name and select Blocked in the drop down box in the Value field to block the key combination:

    • AltF4
    • AltTab
    • ControlAltDelete
    • ShiftControlEscape
    • Windows
    • WindowsL
  5. In the Settings pane, double-click DisableKeyboardFilterForAdminstrators.

  6. Select true in the drop down box in the Value field to disable Keyboard Filter for administrator accounts.

To configure Unified Write Filter protection

  1. In ICE, in the Configuration File pane, expand Features, expand Lockdown, and then click Unified Write Filter (UWF).

  2. In the Settings and Properties pane to the right of the Configuration File pane, click the Settings tab.

  3. In the Settings pane, in the Filter view by list, select 4 Specialize.

  4. In the Settings pane, double-click AddAllVolumes.

  5. In the drop-down box, select True to enable UWF protection for all volumes.

  6. In the Settings pane, double-click Binding.

  7. In the drop-down box, select Loose Binding.

  8. In the Settings pane, double-click OverlayMaximumSize.

  9. Enter 2048 in the Value field to set the maximum size of the overlay to 2 GB.

  10. In the Settings pane, double-click OverlayCriticalThreshold.

  11. Enter 1900 in the Value field to set the critical threshold warning level to approximately 1.85 GB.

  12. In the Settings pane, double-click OverlayWarningThreshold.

  13. Enter 1536 in the Value field to set the warning threshold level to 1.5 GB.

Step 7: Configure Your Image to Start in Audit Mode

In this step, you will configure your image to start up in audit mode so that you can configure and prepare your image for mass deployment scenarios.

To configure starting up into audit mode

  1. In the Configuration File pane, expand the Product node, expand the Embedded Core node, and then click Deployment_x86 (if you selected 32-bit architecture) or Deployment_amd64 (if you selected a 64 bit architecture).

  2. In the Settings and Properties pane, in the Filter view by drop-down list, select 7 OOBE System.

  3. In the Settings pane, expand Reseal.

  4. Double-click Mode.

  5. In the drop-down box, select Audit.

Step 8: Add Dependencies, Validate, and Save Your Configuration File

In this step you will add any dependent modules to your image and validate that the configuration file has no errors or warnings. You will also save your configuration file.

To add dependencies, validate, and save your configuration file

  1. On the ICE main menu, click Validate, and then click Add Required Modules.

    This command adds the required packages that are necessary to enable the basic functionality of the features that you added to your image.

  2. If there are any errors or warnings, they are displayed in the Messages pane, below the Configuration File pane. You can double-click any error or warning message for more information.

  3. On the File menu, click Save Configuration File.

Step 9: Create an Unattend File for Deployment

In this step, you will create an unattend file that you use when generalizing your image for deployment. The settings in this unattend file create user accounts, configure Windows 8 Application Launcher, and configure first logons commands to configure your deployed devices.

To create a new unattend file

  1. In ICE, on the File menu, click New Configuration File. In the New Configuration File dialog box, do the following:

    1. Enter LabKioskUnattend as the name for your configuration file.
    2. Select the OS architecture of your device.
    3. Select the version of the OS that you want to install on your device.
  2. Click Create. A new configuration file containing the Embedded Core package becomes visible in the Configuration File pane.

  3. On the Validate menu, click Validate Only.

  4. On the Messages pane, under the Validation tab, double-click on the Dependencies of the source module are not satisfied message. A new window opens up to enable you to resolve dependencies.

  5. On the Resolve Dependencies window, select a language pack and Unbranded Screens, and then click OK.

  6. In ICE, in the Catalog pane, expand Features, and then expand Branding.

  7. Right-click Windows 8 Application Launcher, and select Add to Configuration file.

  8. In the Configuration File pane, expand the Product node, expand the Embedded Core node, and then click Shell-Setup_x86 (if you selected a 34-bit architecture) or Shell-Setup_amd64 (if you selected a 64 bit architecture).

  9. In the Settings and Properties pane, in the Filter view by drop-down list, select 7 OOBE System.

  10. In the Settings pane, expand OOBE.

  11. Double-click HideLocalAccountScreen and select true from the drop down list.

Step 10: Create User Accounts

In this step you will create an administrator account and a general user account. The reason that account creation is done in the unattend file is so that setup does not ask to create an account during final deployment.

To create an administrator account

  1. In ICE, in the Configuration File pane, expand the Product node, expand the Embedded Core node, and then do one of the following:

    • For 32-bit architecture, click Shell-Setup_x86.
    • For 64-bit architecture, click Shell-Setup_amd64.
  2. In the Settings and Properties pane, in the Filter view by drop-down list, select 7 OOBE System.

  3. In the Settings pane, expand UserAccounts.

  4. Right-click LocalAccounts, and select Insert New LocalAccount.

  5. Expand the new LocalAccount setting, and double-click Name.

  6. In the text box, type the name of the administrator account and press Enter.

    For the purpose of this lab, type KioskAdmin as the administrator account name.

  7. Expand the Password setting and double-click Value.

  8. Type in a password for the administrator account and press Enter.

  9. Double-click Group

  10. Type Administrators and press Enter. This adds the account to the Administrators group.

To create a general user account

  1. In the Configuration File pane, expand the Product node, expand the Embedded Core node, and then click Shell-Setup_x86 (if you selected 34-bit architecture) or Shell-Setup_amd64 (if you selected a 64 bit architecture).

  2. In the Settings and Properties pane, in the Filter view by drop-down list, select 7 OOBE System.

  3. In the Settings pane, expand UserAccounts.

  4. Right-click on LocalAccounts and select Insert New LocalAccount.

  5. Expand the new LocalAccount setting, and double-click on Name.

  6. In the text box, type the name of the user account and press Enter.

    For the purpose of this lab, type KioskUser as the account name.

  7. Expand the Password setting and right-click Value.

  8. Select Write Empty String.

  9. Double-click Group.

  10. Type Users and press Enter.

Additional Information

In this lab, leave the password blank for the general user account because you will configure auto login for the account.

Step 11: Configure Automatic Logon

In this step, you configure the device to automatically logon to the administrator account on the deployed device when setup is complete so that you can run commands as an administrator to configure the target device. After the first logon, the automatic logon settings are changed to log on to the general user account.

To configure automatic logon

  1. In ICE, in the Configuration File pane, expand the Product node, expand the Embedded Core node, and then do one of the following:

    • For 32-bit architecture, click Shell-Setup_x86.
    • For 64-bit architecture, click Shell-Setup_amd64.
  2. In the Settings and Properties pane, in the Filter view by drop-down list, select 7 OOBE System.

  3. In the Settings pane, expand AutoLogon.

  4. Double-click Username.

  5. In the text box, type the name of the administrator account and press Enter.

    For the purpose of this lab, type KioskAdmin as the administrator account name.

  6. Expand the Password setting and double-click Value.

  7. In the text box, type the password for the administrator account and press Enter.

  8. Double-click the Enabled setting and select true from the drop down list.

Step 12: Configure Windows 8 App Launcher

In this step you will configure Windows 8 Application Launcher to launch the thin client app automatically when the general user account signs in. Since accounts are created in unattend file, you must also configure Windows 8 Application Launcher in the unattend file in order to create account specific settings.

To launch a command prompt for a general user

  1. In ICE, in the Configuration File pane, expand Features, expand Branding, and then click Windows 8 Application Launcher.

  2. In the Settings and Properties pane, found to the right of the Configuration File pane, click the Settings tab.

  3. In the Settings pane, in the Filter view by list, select 7 OOBE System.

  4. In Settings pane, right-click UserSettings, and select Insert New User.

  5. Expand the new User setting.

  6. Double-click AccountName.

  7. In the text box, type the name of the general user account that you created in Step 10: Create User Accounts and press Enter.

    For the purpose of this lab, type KioskUser.

  8. Double-click AppUserModelId.

  9. In the text box, type the AUMID of the Windows 8 app to launch and press Enter.

    Warning

    Make sure to enter the exact AUMID, with no leading or trailing spaces. The format of the AUMID is as follows:
    <Package Family Name>_<Publisher ID>! <Application ID>

  10. Double-click DefaultReturnCodeAction.

  11. In the drop-down box, select 0.

    This configures Windows 8 Application Launcher to restart the app when the app exits.

  12. Double-click Key.

  13. In the text box, type 1 and press Enter.

  14. Right-click CustomReturnCodeAction and select Insert New LauncherAction.

  15. Expand the new LauncherAction setting.

  16. Double-click ReturnCode.

  17. In the text box, type 4 and press Enter.

    This is the return value written by the Windows 8 app to indicate that an administrator wants to logon.

  18. Double-click Action.

  19. In the drop-down box, select 4 and press Enter.

    This configures Windows 8 Application Launcher to log off.

Additional Information

The Key setting values must be unique integers for each User setting. The actual values don’t matter.

Step 13: Add Post-Deployment Commands

In this step, you add several commands that are run after the first login on each device that the image is deployed to. These commands register a developer license to temporarily enable testing and development of Windows 8 apps, configure automatic logon, create a power plan to disable sleep and hibernation, and enable write filter protection.

To add post-deployment commands

  1. In ICE, in the Configuration File pane, expand the Product node, expand the Embedded Core node, and then do one of the following:

    • For 32-bit architecture, click Shell-Setup_x86.
    • For 64-bit architecture, click Shell-Setup_amd64.
  2. In the Settings and Properties pane, in the Filter view by drop-down list, select 7 OOBE System.

  3. In the Settings pane, right-click FirstLogonCommands and select Insert New SynchronousCommand.

  4. Expand the new SynchronousCommand setting, and double-click CommandLine.

  5. In the text box, type the following text and press enter:

    powershell -c show-windowsdeveloperlicenseregistration
    
  6. (Optional) Double-click Description.

  7. (Optional) In the text box, type Register developer license.

  8. Double-click Order.

  9. In the text box, type 1.

  10. Double-click RequiresUserInput.

  11. In the drop down list, select false.

  12. Repeat this process to create additional SynchronousCommand settings using the following setting values:

    Order

    CommandLine

    Description

    2

    cmd /c reg add "HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon" /v AutoAdminLogon /t REG_SZ /d 1 /f

    Configure automatic logon

    3

    reg add "HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultDomainName /t REG_SZ /f

    Configure automatic logon

    4

    reg add "HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultUserName /t REG_SZ /d KioskUser /f

    Configure automatic logon

    5

    reg add "HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultPassword /t REG_SZ /f

    Configure automatic logon

    6

    bcdedit.exe –set {globalsettings} bootuxdisabled ON

    Hide boot UI

    7

    powercfg -duplicatescheme SCHEME_MIN 44b44aed-fd7f-409d-8c57-6c4232ef9ea8

    Create a new power scheme

    8

    powercfg -changename 44b44aed-fd7f-409d-8c57-6c4232ef9ea8 "Kiosk"

    Rename the new power scheme to Kiosk.

    9

    powercfg -setactive 44b44aed-fd7f-409d-8c57-6c4232ef9ea8

    Set the Kiosk power scheme as active

    10

    powercfg -change -monitor-timeout-ac 0

    Disable monitor timeout

    11

    powercfg -change -monitor-timeout-dc 0

    Disable monitor timeout

    12

    powercfg -change -disk-timeout-ac 0

    Disable disk timeout

    13

    powercfg -change -disk-timeout-dc 0

    Disable disk timeout

    14

    powercfg -change -standby-timeout-ac 0

    Disable standby timeout

    15

    powercfg -change -standby-timeout-dc 0

    Disable standby timeout

    16

    powercfg -change -hibernate-timeout-ac 0

    Disable hibernation timeout

    17

    powercfg -change -hibernate-timeout-dc 0

    Disable hibernation timeout

    18

    powercfg –setacvalueindex 44b44aed-fd7f-409d-8c57-6c4232ef9ea8 SUB_NONE CONSOLELOCK 0

    Don’t require password on wake

    19

    powercfg –setdcvalueindex 44b44aed-fd7f-409d-8c57-6c4232ef9ea8 SUB_NONE CONSOLELOCK 0

    Don’t require password on wake

    20

    cmd /c uwfmgr filter enable

    Enable UWF 

Step 14: Add a Product Key and Save Your Unattend File

In this step you will add a product key to your unattend file so that the deployed image can be installed on your device without prompting for a product key. Since this product key is activating a deployed image, you will set the product key for the specialize phase of setup.

To add a product key to your configuration file

  1. In ICE, in the Configuration File pane, expand the Product node, expand the Embedded Core node, and then do one of the following:

    • For 32-bit architecture, click Shell-Setup_x86.
    • For 64-bit architecture, click Shell-Setup_amd64.
  2. In the Settings and Properties pane to the right of the Configuration File pane, click the Settings tab.

  3. In the Filter view by drop-down list, select 4 Specialize.

  4. In the Settings pane, double-click the ProductKey setting.

  5. In the text box, enter your product key and press Enter. Include the hyphens as part of the key, for example xxxxx-xxxxx-xxxxx-xxxxx-xxxxx.

  6. On the File menu, click Save Configuration File As….

  7. In the Save dialog box, navigate to a location that you can access from your device, such as a USB flash drive or a network share.

  8. Enter LabKioskUnattend as the file name, and click Save.

Additional Information

For more information about product keys, see Product Keys and Activation.

Step 15: Start Image Builder Wizard on Your Device

In this step you will boot your device and start Image Builder Wizard (IBW).

To start IBW

  1. To start IBW on your device, do one of the following:

    • Run setup.exe from the Standard 8 IBW DVD. Use the version of the DVD (x86 or x64) that matches the architecture of your device.

    • If your device cannot boot from a DVD, boot your device by using the USB flash drive that you prepared in “Step 2: (Optional) Create USB Boot Media for Your Device” of Get Started with Standard 8.

      Tip

      To boot from a USB flash drive, you may need to adjust the BIOS settings on your device to boot from a USB flash media.

Step 16: Deploy the OS Image to your Device

In this step you will use IBW to deploy the OS image to your device, as specified by your configuration file.

To deploy an OS image

  1. In IBW, in the Setup wizard, click Deploy a Configuration File or WIM.

  2. Browse to the location where you saved your configuration file in Step 2: Create a New Configuration File Based on the Retail Template.

  3. Select LabKioskConfig, and click Open. The setup process begins.

  4. Enter a Standard 8 product key to activate Windows, and then click Next.

  5. Accept the license terms by clicking I accept the license terms, and then click Next.

  6. Select your language preferences, and then click Next.

  7. On the Where do you want to install windows page, click the drive or partition pair on which you would like to install your OS image. Select a drive and partition that your device is configured to boot from.

    For the purpose of this lab, delete any existing partitions on the device (after backing up any data that you need to keep) by using the Drive Options (advanced) menu and select Disk 0 Unallocated Space as the location to install Windows. If you choose to use existing partitions, or create new ones, you will need to modify the remaining steps of this lab to reflect your partition structure.

  8. Click Next to install your OS image on the device. If you selected unallocated space, setup automatically creates a system partition and an OS partition for you.

    During the installation process (which will take several minutes), your device will reboot. You will need to remove your USB flash drive before your device reboots to complete the installation process.

    Note

    If you forget to remove the USB flash drive, your device may boot back into the IBW tool. If that occurs, exit IBW and remove your USB flash drive and reboot the device.

  9. When the Install Evaluation Copy wizard appears, click Next and complete the Standard 8 setup wizard to configure your OS.

Step 17: Provision Your Windows 8 App in Audit Mode and Generalize Your Image

In this step you will provision your Windows 8 app for all users on your device in audit mode and use Sysprep Command-Line Settings to generalize your image. Provisioning automatically installs the app for any account when that account logs onto the device. Generalizing the image removes any device specific information from your image, so that you can deploy the image to multiple target devices.

To provision your Windows 8 app in audit mode and generalize your image

  1. Wait for your device to start up in audit mode.

  2. On the Start screen, click on Desktop.

  3. Close the System Preparation Tool window.

  4. On the desktop, start a command prompt running as an administrator.

  5. Verify that your device has access to the network share or USB flash drive that contains the app package that you created in Step 1: Create and Build a Sample Windows 8 App. You may need to insert your USB Flash drive back into the device.

  6. Locate the security certificate and the .appx file in your app package folder. For example, if you copied the app package from Step 1: Create and Build a Sample Windows 8 App to the root folder of your USB flash drive, the paths are as follows:

    • Path to security certificate: “E:\KioskSampleApp_1.0.0.0_AnyCPU_Test\KioskSampleApp_1.0.0.0_AnyCPU.cer”
    • Path to .appx file: “E:\KioskSampleApp_1.0.0.0_AnyCPU_Test\KioskSampleApp_1.0.0.0_AnyCPU.appx”

    You need these paths for the next step.

  7. At the command prompt, type the following commands to provision the app:

    reg add HKLM\Software\Policies\Microsoft\Windows\Appx /v AllowAllTrustedApps /t REG_DWORD /d 1 /F > NULL
    
    certutil –addstore TrustedPeople “<path to security certificate>”
    
    dism /online /add-provisionedappxpackage /packagepath:”<path to .appx file>” /skiplicense
    
  8. At the command prompt, navigate to the directory that contains the unattend file that you created in Step 11: Create an Unattend File for Deployment.

  9. At the command prompt, type the following commands to generalize the image:

    C:\Windows\System32\Sysprep\sysprep /oobe /generalize /reboot /unattend:”LabKioskUnattend.xml”
    
  10. The sysprep process takes several minutes. When sysprep is complete, the device restarts.

  11. Restart your device into IBW, as in Step 12: Start Image Builder Wizard on Your Device .

Step 18: Capture the Windows Image for Deployment

In this step, you will start a WinPE command prompt and create a Windows Imaging Format (WIM) file for deployment to other devices.

To capture the image

  1. In IBW, click Launch WinPE Command Prompt.

  2. At the command prompt, navigate to the location to save your image file. For example, “D:”

    Warning

    By default, a WinPE command prompt starts at the X:\sources directory. Running DISM from this location runs an incorrect version of DISM, however running DISM from any other location runs the correct version.

  3. Identify the Windows system volume letter. The volume letter may appear as a different volume letter in WinPE. If the volume that contains Windows is not E:, then you need to specify the correct volume letter for the /CaptureDir parameter in the following step.

  4. At the command prompt, type the following command to capture the image:

    DISM /Capture-Image /ImageFile:LabKioskImage.wim /CaptureDir:E:\ /Name:”Windows Embedded”
    

Step 19: Deploy the Windows Image to a Target Device

In this step, you will deploy your image file to a target device. Your target device must have the same drive, partition structure, and hardware as the original device.

To prepare your target device for deployment

  1. Start IBW on your device, as in Step 15: Start Image Builder Wizard on Your Device ,

  2. In IBW, click Launch WinPE Command Prompt.

  3. At the command prompt, type the following to launch diskpart:

    diskpart
    
  4. At the diskpart prompt, type the following commands to format the system drive and recreate the partition structure of the reference device:

    select disk 0
    clean
    create partition primary size=350
    format quick fs=ntfs label="System"
    assign letter="C"
    active
    create partition primary
    format quick fs=ntfs label="TC"
    assign letter="E"
    active
    exit
    

    These diskpart commands perform the following actions:

    • Select disk 0.
    • Clean the selected disk (disk 0).
    • Create a primary partition of 350mb on the selected disk (disk 0).
    • Format the primary partition as NTFS and label it as "System".
    • Assign drive letter "C" to the primary partition.
    • Make the primary partition (C) active.
    • Create another primary partition with the remaining free space on the selected disk (disk 0).
    • Format the primary partition as NTFS and label it as "TC".
    • Assign drive lettel "E" to the primary partition.
    • Make the primary partition (E) active.
    • Exit diskpart.

    Important

    If you created a different partition structure for your initial device, you must create an identical partition structure on your target device.

  5. At the command prompt, navigate to the location of the image file that you captured in Step 14: Capture the Windows Image for Deployment.

  6. At the command prompt, type the following commands to deploy the image file to your device:

    DISM /Apply-Image /imagefile:LabKioskImage.wim /index:1 /ApplyDir:E:\
    
    bcdboot E:\Windows /l en-US
    

Step 20: Complete Setup on the Target Device

In this step, you complete the setup process on your target device, and sign up for a developer license so that the app can run on the device for 30 days. You also log into the general user account so that your app can install on the system before UWF is enabled after the next system restart.

To finish setting up your target device

  1. Remove any USB drives, and restart the target device. Windows Setup continues to personalize the device. Your device may restart several times during this process.

  2. Accept the license terms by clicking I accept the license terms, and then click Next.

  3. Select a color theme, enter a name for the device, and then click Next.

  4. Select Use express settings, and click Next.

  5. Your device should automatically sign into your administrator account. If you did not configure auto logon in Step 11: Configure Automatic Logon then you must manually sign into the administrator account.

  6. When the account signs in, you will be prompted to sign up for a Developer License. You will need to enter your Microsoft account credentials to complete the sign up process.

  7. Wait several minutes for the app to install. You can verify that the app is installed by pressing the Windows logo key and q at the same time to bring up the Apps Search screen, and verifying that the “Contoso Airlines Check-In” app in present.

  8. In a command prompt, type logoff to logout, and log back in as KioskUser.

    Warning

    Make sure you log off of the administrator account and log back in as the general user without shutting down or restarting your device. If you restart your device before signing in as the general user, UWF will be enabled, and you will need to disable UWF and restart to properly install the app for the general user.

  9. After a few minutes, the Contoso Airlines Check-In app should finish installing for KioskUser and automatically launch.

  10. Press the Ctrl, Shift, and F1 keys at the same time to bring up the Administrator screen. Click on Log out to break out of the app and log off of KioskUser.

  11. Restart your device.

Step 21: Verify that the Device Is Functioning Correctly

In this step, you will use the device and verify that the settings are applied correctly, and that the device functions as a thin client style device.

To verify your device

  1. When the device is starting up, verify that no Windows UI appears during the boot up process.

  2. Verify that the device automatically logs into the general user account, without displaying any logon UI or any other Windows UI elements until the Start screen appears.

  3. Verify that the device automatically launches the configured app shortly after the Start screen is displayed.

  4. Verify that you cannot break out of the app using standard Windows 8 methods, such as attempting to close the app, pressing alt+f4, ctrl+alt+delete, attempting to bring up the task manager by pressing ctrl+shift+escape, or pressing the Windows logo key to switch back to the Start screen.

  5. Verify that edge gestures do not work, and that you cannot make the charms bars appear, or otherwise break out of the app experience.

  6. If you used the sample app from Step 1: Create and Build a Sample Windows 8 App, verify that you can use the Logout button to sign out of the general user account and then sign into the administrator account.

  7. In the administrator account, verify that UWF is working correctly by bringing up a command prompt running as an administrator and type the following command:

    Uwfmgr filter get-config
    

    UWF is enabled if the filter state is set to ON for the current session.

Conclusion

In this lab exercise you created two configuration file s by using ICE. You used one configuration file to create your basic image that started up in audit mode. You used the second configuration file as an unattend file that you used while generalizing your image for deployment. You then captured an image for deployment, and deployed that image to a different device. You then finished setting up the device and verified that the functionality of the device works correctly.

Additional Information

This lab is a starting point, meant to demonstrate the procedure of creating and deploying a Standard 8 image that can be used on a thin client device.

Here are some exercises that you may want to try:

  • Use your own Windows 8 app instead of the sample app.
  • Add commands to the unattend file to make the final setup process easier, such as specifying the device name and customizing the settings.

See Also

Other Resources

Advanced Lab Exercises