Introduction

This document contains information that will aid in manually adding a limited set of features to a Windows Preinstallation Environment (WinPE). It is hoped and anticipated that this document will develop over time to include additional features.

Different WinPE versions may require different file and registry dependencies in order to support the same feature(s). Different WinPE versions are frequently identified in this document using Major Minor Build numbers. Version 6.1.7601 for example refers to WinPE 3.1 - which may use either Windows 7 Service Pack 1 or Windows Server 2008 R2 Service Pack 1 sources.

This document will list any file and/or registry dependencies (or changes) required to add a feature. This will take the form of the following where possible -

PLEASE NOTE - in some cases (including adding WOW64 support) registry settings may only be documented using the .reg format.

About Registry Dependencies (OfflineReg)

A detailed guide for OfflineReg covering usage and syntax is available here.

Note the ability to bypass security permissions on registry keys - this is a very useful means of adding features to an offline WinPE.

Syntax: -

E.g.: -

About Registry Dependencies (.reg)

WARNING - the majority of the .reg files contained in this guide are designed to be executed in the running WinPE - not added to an offline system. Adding them to the host Operating System used to build WinPE could potentially damage the host operating system. Please take care when modifying the registry!

If you prefer to add the registry settings to an offline WinPE then please take care in modifying the .reg files accordingly.

About Registry Dependencies (reg.exe)

WARNING - the reg.exe batch files contained in this guide are designed to be executed in the running WinPE - not added to an offline system. Running them on the host Operating System used to build WinPE could potentially damage the host operating system. Please take care when modifying the registry!

If you prefer to add the registry settings to an offline WinPE then please take care in modifying the batch files accordingly.

About File Dependencies

File dependencies will be listed in the form of text entries. This information can be used to create a filelist for use with wimlib to extract the required files from install.wim/install.esd (the Windows Image Format file containing Windows source files - distributed with Windows installation media).

E.g. -

In the above example, the first entry is for the file dependency ExplorerFrame.dll. The path to this file in install.wim is \windows\system32\.

And the second entry is for the file dependency ExplorerFrame.dll.mui. The path to this file in install.wim is \windows\system32\*\ - where * is a wildcard. Using the wildcard will extract all instances of the target .mui file. E.g. -

In this particular case * can be substituted for the default or required language, which will reduce the number of files extracted. E.g. edit the filelist and replace * with en-US (\windows\system32\en-US\ExplorerFrame.dll.mui)

About wimlib

For more details about wimlib, see here. wimlib can be used to perform a range of Windows Image Format (.wim) tasks, including -

The Windows binary wimlib-imagex.exe is a command-line tool and can be scripted to modify WinPE - adding the features in this document without the need to mount the .wim file or fully extract it's contents.

The following process can be used to add feature to WinPE -

  1. Use wimlib to extract registry hives from the offline WinPE .wim file
  2. Mount the extracted registry hives
  3. Modify the mounted hives
  4. Unmount the hives
  5. Use wimlib to add the modified hives back to the WinPE .wim file
  6. Use wimlib to add any required file dependencies to the WinPE .wim file

Document date - 17th February 2018