Windows Embedded POSReady 7 CTP is available!

Microsoft has published the Community Technical Preview of the next version of Windows Embedded POSReady 2009.

Windows Embedded POSReady 7 is based on Windows 7 and is specially designed for Point of Service solutions with an easy installation wizard.
The new version comes with enhancements for security and manageability and additional embedded features such as a keyboard filter.

To download and test the CTP go to Microsoft Connect and add “Windows Embedded POSReady” to your dashboard.

Portable DISMUI and/or DISMUI without .NET Framework

DISMUI allows you to alter your Windows Embedded Standard 7 image graphically.
With it you get an interface similar to the Image Build Wizard which will guide you through the whole image changing process.

However DISMUI needs to have the Microsoft .NET Framework 2.0 installed on your image.

Unfortunately the Microsoft .NET Framework is not portable either – but the Mono Framework is portable!

The Mono Framework is an Open Source implementation of Microsoft’s .NET Framework and DISMUI is also running with the Mono Framework.

I will describe two scenarios how you can use the Mono Framework to make DISMUI run on any Windows PC.

Making DISMUI portable

To make DISMUI portable you need to download the Mono Framework first.

  1. Go to http://www.go-mono.com/mono-downloads/download.html and download the Windows version.
  2. Run the downloaded setup file on a development machine.
  3. Copy the installation folder containing the Mono Framework to a USB drive.
  4. Download the newest version of DISMUI (min. req. 1.3.1 – adapted for Mono)
  5. Copy DISMUI to a USB drive
  6. Create a batchfile or shortcut to run the following command

“MonoDirectory”\bin\mono “DISMUIDirectory\DISMUI.exe”

Now DISMUI will run on any Windows PC regardless .NET Framework is installed or not.

Creating an DISMUI Windows PE key

imageThe Mono Framework also allows running DISMUI under Windows PE.

If you build a Windows PE USB key you can also start and run DISMUI directly from Windows PE to modify your images on the device even if they are offline.

These are the steps needed to create an USB key with Windows PE on it.

  1. Download and install the Windows Automated Installation Kit 7: http://www.microsoft.com/downloads/en/details.aspx?FamilyID=696dd665-9f76-4177-a811-39c26d3b3b34&displaylang=en
  2. Open a command prompt and navigate to the WAIK Tools folder: C:\Program Files\Windows AIK\Tools
  3. Run copype.cmd x86 <TargetFolder>
  4. Move the winpe.wim from the TargetFolder to the TargetFolder\ISO\sources\boot folder and rename it to boot.wim
  5. Copy the ISO folders contents to a USB key with a primary active NTFS partition
  6. Copy DISMUI and Mono Framework to the USB key
  7. Boot the key and run DISMUI using the created batch or shortcut from above

DISMUI v1.3 – Update available

imageThe DISMUI Tool has been updated with the following new features

  • Permanent Packages (e.g. the new SKU Compliance packages from SP1)
    DISMUI checks if a permanent package is included in the image and prevents it from being removed.
  • Advanced Dependency Check
    DISMUI can now check for all needed dependencies – also general dependencies of the installed product such as USB Stack, Shell, etc.
    The tool also checks for conflicts to ensure the modified image runs.image
  • Automatic search for Distribution Share
    On each start the tool searches automatically for the Distribution Share.
    For this the DS directory must be in the root on any device (such as IBW DVD) or in the applications directory.
  • Additional changes
    DISMUI checks if changes were made to the feature selection. If not it will no longer continue to the next screen.

    imageAfter the image has been modified successfully – DISMUI will now offer to do the reboot automatically.

Windows Embedded Standard 7 Service Pack 1 – CTP available

On Microsoft Connect you can already download the Customer Technical Preview of Service Pack 1 for Windows Embedded Standard 7.

New features in SP1 are Remote FX which is a set of RDP technologies that allows rich graphics experience directly from the server.
Additional features specifically for Windows Embedded Standard 7 are

  • PMQ Mapping to Out of Box Drivers
    The features allows drivers in the out of box drivers folder of the distribution share to be mapped automatically during the installation. Until now only in-box drivers were mapped by the tool.
  • SKU Compliance Packages
    3 new packages are available which can be used to only include features that are appropriate for the selected SKU. This makes it easier to build an image for a specific Windows Embedded Standard 7 SKU.

The CTP is available in different versions:

  • Toolkit with integrated SP1 Distribution Share to create new installations with SP1 CTP
  • SP1 Update CAB which can be used to deploy the SP1 CTP to existing devices

To send feedback you can use the Microsoft Connect platform.

The download can be found here.

Tags

Silverlight 4 available for Windows Embedded Standard 2009 & 7

On ECE you can now download Silverlight 4 for Windows Embedded Standard 2009 and Windows Embedded Standard 7.

Silverlight is a free .NET powered plug-in for browsers, devices and operating systems which allows to create powerful and interactive user experiences.

Download for Windows Embedded Standard 2009
Download for Windows Embedded Standard 7

Keyboard Filter Driver for Windows Embedded Standard 7

The Keyboard Filter Driver allows you to block any unwanted key combination or even single keys. This is done by a kernel mode filter driver which filters out the key presses before they are processed by the system.
Examples for unwanted key combinations on an embedded system are: Ctrl+Alt+Delete, Ctrl+Shift+Esc, Win+E, etc. All these key combinations can be filtered with this driver.

The driver is available for Windows Embedded Standard 7 only and ships can be installed easily with a single setup file.

Configuration

The configuration is done via the command line tool kbfmgr.

image

Usage:   
/enable                                                                        Enables the filter driver
/disable                                                                        Disables the filter driver
/addset <+|->scancode[,<+|->scancode[,...]]                   Creates a new set of filtered scancodes
/modifyset <setid> <+|->scancode[,<+|->scancode[,...]]    Modifies a new set of filtered scancodes
/deleteset <setid>                                                         Deletes a set

 

Scancodes

The scancodes for the keys must be entered in decimal format.
A full list of all scancodes of the English keyboard layout can be found here: http://www.win.tue.nl/~aeb/linux/kbd/scancodes-1.html

Sample configuration

To block LCtrl + LShift + Esc please run the following command:

kbfmgr /addset +1,+29,+42

After you have entered the command restart the device to apply the settings.

Installation

Run Setup.exe directly on the target device and follow the instructions of the wizard.
To enable the filter driver run

kbfmgr /enable

After running the command restart the device to apply the settings.

Custom Bootlogo for Windows Embedded Standard 7

CustomBootlogoWES7Windows XP Embedded had the option to enable the custom bootlogo (boot.bmp) by just adding two commands to the boot.ini. However a similar option is missing in Windows Embedded Standard 7. It only offers to use a blank screen instead of the default Windows boot animation. The problem with this could be that the end user thinks the device has crashed and resets it during the boot phase. Elbacom is currently working with a partner to enable custom bootscreens also in Windows Embedded Standard 7. What we need to know is how big is the demand for such a feature in Windows Embedded Standard 7. Is a branding starting from the boot process important to you? Please use the following poll to give us feedback. If you wish to write a comment you can do this using the comment feature or write an email to wes7bootlogo@elbacom.com. Please click here to vote. Thank you!

Tags

.NET 4.0 Framework Template available

Microsoft has published a template for the Microsoft .NET Framework 4.0 and .NET Framework 4.0 Client Profile.
The template can be used with the Image Configuration Editor. It will add all required packages automatically to ensure that the framework works properly.

To download this template and also other templates for Microsoft and 3rd party applications visit the Microsoft Windows Embedded Standard 7 Compatible Applications website.

Tags

Microsoft .NET Framework 3.5 SP1 for Windows XP Embedded Service Pack 3

Microsoft has released the .NET Framework 3.5 SP1 component for XP Embedded.

.NET 3.5 SP1 is available as setup component that includes the installation and its required dependencies.
Customer should use the newest version of .NET to ensure the availability of support after April 12, 2011.

Download

Tags

“Disk Mode Write Filter” or “Resetting Differential VHDs”

The Enhanced Write Filter is also shipped with Windows Embedded Standard 7. However it does not include the Disk mode known from earlier Embedded versions. The Disk Mode allowed to save all the changes on a separate hard drive.

There is an alternative approach available to create a scenario similar to the EWFs Disk Mode – you can use VHDs.
Because Windows 7 and also WES7 support to boot from VHDs (Virtual Hard Disks) you can make use of the differential VHD feature.
This feature allows you to create one master VHD file containing the operating system in the state it should stay and a differential VHD which stores all the changes made to the master image during runtime.

image

For example you can have your Master VHD file on a Compact Flash and the differential file on a hard disk to redirect all the writes away from the flash media.

One feature from EWF is to discard all changes made to the image on every reboot.
The solution for this is to create a new differential VHD file with the master as parent and use the new VHD as default boot entry.
After a reboot the system is back in its original state.

Reset Differential VHD

To automate this process you can use the following batch file. Please adapt the paths to your VHD location in the “Variables” section. Have a look below for the installation of the batch file.

How it works

The system works with 2 differential VHD files which will be swapped out on every boot.
On each boot the batchfile checks which differential VHD is active.
It will then delete the non-active differential VHD and recreates the non-active VHD.
By this all previous changes are undone. Then the batchfile will set the new non-active VHD as new default boot device.
On the next start the system will boot from the fresh created VHD.

Batch File

 

@echo off
echo VHD Diff Resetter created by Wolfgang Unger

REM #########################
REM Variables
REM #########################
set VHD_Drive=D:
set VHD_Parent=wes7.vhd
set VHD_DiffFile1=wes7diff1.vhd
set VHD_DiffFile2=wes7diff2.vhd

set TempFile=D:\diskpart.txt
REM #########################

REM Try to delete the second diff file. if successful image 1 is bootet.
del %VHD_Drive%\%VHD_DiffFile2%
if exist "%VHD_Drive%\%VHD_DiffFile2%" goto File2

del %VHD_Drive%\%VHD_DiffFile2%

echo create vdisk file=%VHD_Drive%\%VHD_DiffFile2% parent=%VHD_Drive%\%VHD_Parent% > %TempFile%
echo exit >> %TempFile%

diskpart /s %TempFile%

bcdedit /set {current} device vhd=[%VHD_Drive%]\%VHD_DiffFile2%
bcdedit /set {current} osdevice vhd=[%VHD_Drive%]\%VHD_DiffFile2%

GOTO Done
:File2

del %VHD_Drive%\%VHD_DiffFile1%

echo create vdisk file=%VHD_Drive%\%VHD_DiffFile1% parent=%VHD_Drive%\%VHD_Parent% > %TempFile%
echo exit >> %TempFile%

diskpart /s %TempFile%

bcdedit /set {current} device vhd=[%VHD_Drive%]\%VHD_DiffFile1%
bcdedit /set {current} osdevice vhd=[%VHD_Drive%]\%VHD_DiffFile1%

:Done

del %TempFile%
echo Done.

Installation

  1. Install Windows Embedded Standard 7 to a VHD. Please have a look here for instructions.
  2. Boot the image.
  3. Save the batchfile from above to the image.
  4. Open Task Scheduler
  5. Click “Create Task…”
  6. Enter a name for the task and check “Run with highest privileges”
  7. Goto the “Triggers” tab an click “New”
  8. Select “At startup” from the “Begin the task” dropdown and click “OK”
  9. Goto the “Actions” tab and click “New”
  10. Browse to the batch file and click ok
  11. Click OK to save the task
  12. Run the batch file once and reboot

 

Usage Scenarios

This solution can be helpful when

  • using a flash disk drive which contains the master image and all changes should be located on a hard disk drive
  • changes should persist on reboots (for this do not create the task and execute the batch file only when needed)
  • you do not want to use EWF or FBWF
  • etc.