Archive for the ‘XP Embedded Builder’ Category
New Windows Embedded Tool: Driver Injector
I have developed a new tool called Driver Injector for Windows Embedded which makes installing drivers easier and it helps a lot in case there are problem during a driver installation. The tool will automatically search for matching drivers and will inject them to the target system. This can help if you need to install lots of drivers from a driver DVD. In this case Driver injector will do the work for you. Just specify the devices.pmq file (run TAP.exe on your target device to get the device information) and specify the driver search directory – in this scenario it will be the driver DVD. After a few clicks all drivers are included in your image and Windows can install them automatically.
The tool also helps if there is a problem when installing a driver. Windows normally just shows that there was an error installing the driver (Cannot find file specified, The service specified is invalid,..). However it lacks important information. When this is the case just explore the INF file of the driver with Driver Injector. The tool will show you what is missing from your image within a few seconds. All missing files are highlighted. To solve the issue just copy the missing files to your image and install the driver again. This is the easiest and fastest way to solve these kind of errors.
The tool can be downloaded for free on the Elbacom Website: http://www.elbacom.com/embedded/products/tools
Also I have published a detailled how to on the techblog and will add additional howtos for specific usage scenarios within the next days.
Written by Wolfgang Unger
February 3, 2011 at 16:30
Posted in Windows 7, Windows 7 Embedded, Windows XP Embedded, XP Embedded Builder
Tagged with Driver Injector, driver installation error, explore inf files, inf
Automatically enter the PID in XP Embedded Builder
If you don’t want to enter the PID in XP Embedded Builder all the time you can have XP Embedded Builder to do this for you.
For this please do the following:
- Create a textfile named PID.txt
- Enter the Product Key in this file including the dashes (e.g.: AAAAA-BBBBB-CCCCC-DDDDD-EEEEE)
- Save the PID.txt to the root of a USB flash drive
- Connect the USB flash drive to the target pc where you will boot XP Embedded Builder
Now every time you boot XP Embedded Builder with this USB flash drive connected the PID will be entered automatically from this file.
Written by Wolfgang Unger
February 3, 2009 at 19:41
Posted in XP Embedded Builder
Additional functionality for custom components in XP Embedded Builder
In the version 2.1 of XP Embedded Builder new functions were included which can be used in the custom components.
For creating customer components in XP Embedded Builder please have a look here.
Create batch commands that will run in FBA at RunOnce
You can create commands that will be executed in the RunOnce phase of FBA. To do this set the action parameter in the Step section of the component configuration file to finalize:
Sample
[Step_xx]
Action=finalize
Arg0=regedit.exe /s myregfile.reg
Arg1=del myregfile.reg
Create components for XP Professional like images only
In the new version of XP Embedded Builder it is possible to create XP Professional like images with all Embedded Features included by just selecting one option during the setup process.
If you want to create a component that will be also available for the XP Professional like installation or a component which should only be available in the XP Professional like setup mode you can use the following parameters in the component configuration.
[Component]
isXPPro=TRUE
forXPProOnly=TRUE
isXPPro –> this parameter will tell XP Embedded Builder that the component can be used in the XP Professional like setup mode too.
forXPProOnly –> this parameters tells XP Embedded Builder that the component can only be used in the XP Professional setup mode.
Additional Parameter for all XPPro options:
XPProStartStep –> this parameter will tell XP Embedded Builder where it should start with the installation.
Sample:
[Component]
Name=Network
Version=1.0
Group=Network
Order=550
isXPPro=TRUE
XPProStartStep=3[Step_0]
Action=copy
Arg0=DataWindows
Arg1=[InstallWinDir][Step_1]
Action=reg
Arg0=Import
Arg1=[InstallWinDir]System32configSYSTEM
Arg2=reg.reg[Step_2]
Action=reg
Arg0=Import
Arg1=[InstallWinDir]System32configSYSTEM.SAV
Arg2=reg.reg[Step_3]
Action=Network
If you select to install the Network component in XP Professional like setup mode, XP Embedded Builder will start the component installation at Step_3. In this case it means that it will only display the preconfigured Computername setup dialog which ships with the Network component. The rest of the installation specified in Step 0-2 will be skipped because the networking components are included in the XP Professional like version by default.
Written by Wolfgang Unger
February 3, 2009 at 19:30
Posted in XP Embedded Builder
Creating custom components
XP Embedded Builder v2 allows you to create your own components very easily.
To create a component you just need to create the correct file structure, export your registry entries and build a configuration file.
I’ll show you how to build your component here and use the MsConfig component as example.
- Create a folder for your new component – in this case "MsConfig"
- Create a subfolder named Data in the component folder
- Now copy the files into the Data folder with the full path
Example:
MsConfig
|-Data
–|-Windows
—–|-PCHEALTH
——–|-helpctr
———–|-binaries <– place the file MsConifg.exe also in this folderIf you have your own application you can just copy and paste the whole folder structure into the data folder and you are fine. Just take care that you put it into the correct subfolders like "Windows", "Program Files", etc.
- Create a registry import
If you need to add registry data to run the application just export them to normal registry files (.reg – extension)
Open the exported file – you now need to split up the file according to the registry pathes.
You need a seperate file for HKLMSoftware, HKLMSystem, HKLMSecurity, HKLMSAM.
Create a seperate file for each of those path and replace the root pathes with ‘tmp’.For example:
[HKEY_LOCAL_MACHINESystemCurrentControlSet] with [HKEY_LOCAL_MACHINEtmpCurrentControlSet]
[HKEY_LOCAL_MACHINESoftwareMicrosoft] with [HKEY_LOCAL_MACHINEtmpMicrosoft]Save each individual reg file to the components folder under a seperate name.
Example for MsConfig:
Filename: reg_msconfig.reg
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionApp PathsMSCONFIG.EXE]
@="C:\WINDOWS\PCHealth\HelpCtr\Binaries\MSConfig.exe"
New Filename: reg_sw.reg
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINEtmpMicrosoftWindowsCurrentVersionApp PathsMSCONFIG.EXE]
@="C:\WINDOWS\PCHealth\HelpCtr\Binaries\MSConfig.exe"
5. Create a file named Config.cfg
Use the following sample as template to create your component configuration.
[Component]
Name=System Configuration – MsConfig
Version=1.0
Group=System Configuration
Order=1000
Autorun=FALSE
[Step_0]
Action=copy
Arg0=Data
Arg1=[InstallPartition][Step_1]
Action=reg
Arg0=Import
Arg1=[InstallWinDir]System32configSOFTWARE
Arg2=reg_sw.reg[Step_2]
Action=reg
Arg0=Import
Arg1=[InstallWinDir]System32configSOFTWARE.SAV
Arg2=reg_sw.reg
[Component]
Name=Displayname in the selection menu
Version=Version of the component -> older version get replaced by newer ones
Group=Name of the group in which the component will show up in the selection menu
Order=Installationorder (the higher the later)
Autorun=TRUE -> component will be launched automatically after baseimage installation
Action=copy <- tell XPeBuilder to copy files
Arg0=Data <- Source directory (relative to the pluginpath)
Arg1=[InstallPartition] <- Destination directory (see Tags)
[Step_x]
Action=reg <- tell XPeBuilder that a registry function will follow
Arg0=Import <- tell XPeBuilder to import a file into the registry
Arg1=[InstallWinDir]System32configSOFTWARE <- path to the registry hive which should be loaded
Arg2=reg_sw.reg <- path to the file which should be importet to the registry
[Dependencies]
DepX=Name of the component <- this creates a dependency to this component
[Conflicts]
ConX=Name of the component <- this creates a conflict between the components
Tags
Tags will be replaced with certain parameters specified during the installation – see list below
[InstallPartition]=Installation Partition (e.g.: C:)
[InstallWinDir]=Windows Directory of the installation (e.g.: C:Windows)
Integrating the component into XP Embedded Builder
- Create a folder named "Components" in the root of an USB drive.
- Copy the created component into this folder
- Connect the USB drive to the target machine and boot XPeBuilder
- The component will now appear in the component selection dialog
Written by Wolfgang Unger
October 2, 2008 at 18:24
Posted in XP Embedded Builder
XP Embedded Builder v2 – Overview
XP Embedded Builder is a tool which allows you to create your XP Embedded images directly on the target hardware without any knowledge in Target Designer.
The interface is like an XP Professional setup – you boot from DVD and a setup wizard will lead you through the installation.
At the beginning you can enter the product key to create a full version XP Embedded image.
You’ll get your product key together with your license package. If you leave the field blank, the XPeBuilder will create an 120-day evaluation version.
The next step allows you to prepare your target disk drive. You can create, delete and modify partitions to build the environment you need for your application. To easily prepare a whole disk drive you can just select the disk and click “Next” – the XP Embedded Builder will then create a single primary partition on the selected drive and will format it with NTFS filesystem.
After the preperation is done, the setup will copy a basic XP Embedded image to the destination drive. This is a small XP Embedded image which contains only basic functionality (footprint is lower than 100MB). This image is the base for all further customizations. From now on it’s up to you to select the components you wish to add to the XP Embedded image.
The XPeBuilder offers 50 components at the moment and there will be more available from time to time.
A component in XPeBuilder is more like a macro component in Target Designer because it already contains all needed files and dependencies.
Now you can specify a password for your administrator account. In the next setup screen you can create user accounts and give them the appropriate rights. You can even specify an automatic logon here.
The next setup screen will show you a list of all available components which are combined in groups.
To install a component just check it. If you click “Next” the XPeBuilder will check the dependencies of you selection and will add the missing components automatically. It will also check for conflicts and display you which components cannot be added together. If there is no conflict, XPeBuilder will begin with the component installation. Some components require further configuration – these components will display their own configuration windows.
For example the “Control Panel Items” component lets you select each control panel entry that should be added. The “Network” component will let you specify the computername and workgroup for the device. Or the “Language Pack” component lets you specify which language packs you want to install and lets you configure a default language.
After all components have been installed the XP Embedded Builder will do it’s final work and reboot the system.
Now the First Boot Agent will startup to finish the image configuration. When it’s done you can finish your XP Embedded image by installing additional driver, applications and so on as on XP Professional.
Written by Wolfgang Unger
October 2, 2008 at 13:29
Posted in XP Embedded Builder