Driver Installation XML Schema Definition

Driver Installation XML Schema Definition

Creating a driverinstall.xml file is the way to specify devices (not included in Windows XP SP 2) to be detected and driver files to install during WEPOS Setup.

Your driver-installation XML file must be enclosed within <Drivers> and </Drivers> tags like the sample file shown below.

The driverinstall.xml can contain the following elements. For details, click an element name in the list below:

Element Description
<AlwaysInstall> Contains information about devices to always install, whether or not they are detected by Plug and Play.
<AdditionalDevice> Contains information about additional devices to be detected and installed during WEPOS Plug and Play detection.

Sample DriverInstall.XML

  <Drivers>
   <AlwaysInstall>
      <Device Id="MF\COM4840_5x2_MSR" ClassId="{4D36E978-E325-11CE-BFC1-08002BE10318}" />
      <Device Id="MF\COM4840_5x2_SERIAL" ClassId="{4D36E978-E325-11CE-BFC1-08002BE10318}" />
   </AlwaysInstall>
   <AdditionalDevice ClassId="{4d36e972-e325-11ce-bfc1-08002be10318}" SourceDir="\\installfolder\drivers$\Drivers\D505\Wireless" >
      <!-- "Wireless Driver" -->
      <File Name="Setup.EXE" InstallDir="system32" />
      <File Name="Setup.ini" InstallDir="system32" />
      <File Name="Wireless.DLL" InstallDir="system32" />
      <File Name="Wireless.cat" InstallDir="system32" />
      <File Name="Wireless.INF" InstallDir="inf" />
      <File Name="Wireless.sys" InstallDir="system32\drivers" />
      <HardwareId Id="PCI\VEN_1111&amp;DEV_1111&amp;SUBSYS_11111111&amp;REV_05" />
   </AdditionalDevice>
   <AdditionalDevice ClassId="{4d36e971-e325-11ce-bfc1-08002be10318}" SourceDir="\\installfolder\drivers$\Drivers\PCI Multi-IO Controller" >
      <!-- "Multi-I/O Controller" -->
      <File Name="PCIMIOC.inf" InstallDir="inf" />
      <HardwareId Id="PCI\VEN_1111&amp;DEV_1111&amp;SUBSYS_11111111&amp;REV_10" />
   </AdditionalDevice>
   <AdditionalDevice ClassId="{4d36e972-e325-11ce-bfc1-08002be10318}" SourceDir="\\installfolder\drivers$\Drivers\NetworkDrivers">
      <!-- "Network Driver" -->
      <File Name="some.bin" InstallDir="system32" />
      <File Name="some.pat" InstallDir="system32" />
      <File Name="netcard.cat" InstallDir="system32" />
      <File Name="netcard.sys" InstallDir="system32\drivers" />
      <File Name="netcardxp.inf" InstallDir="inf" />
      <File Name="ramsed.bin" InstallDir="system32" />
      <HardwareId Id="PCI\VEN_11AA&amp;DEV_1111&amp;SUBSYS_A1111111&amp;REV_A1" />
   </AdditionalDevice>
</Drivers>

Back to top

The <AlwaysInstall> Element

The driverinstall.xml file may contain only one <AlwaysInstall> element.

The <AlwaysInstall> element contains identification information about devices that are not included in Windows XP Service Pack 2 and that must always be installed, whether or not Plug and Play detects the device.

The <AlwaysInstall> element contains one <Device> element for each device that must always be installed. See the following section for more information about the <Device> element.

Sample <AlwaysInstall> Element

  <AlwaysInstall>
   <Device Id="MF\COM4840_5x2_MSR" ClassId="{4D36E978-E325-11CE-BFC1-08002BE10318}" />
   <Device Id="MF\COM4840_5x2_SERIAL" ClassId="{4D36E978-E325-11CE-BFC1-08002BE10318}" />
</AlwaysInstall>

The <Device> Element

Within the <AlwaysInstall> element, one <Device> element is required for each device that must always be installed.

Syntax:

  
    <Device ID="
    device id
    " ClassId=”
    class id
    ”/>
  

device id is a string that is the Plug and Play ID of the device, and class id is the ID of the class to which the device belongs. There is no default value for device id or class id.

For more information about device identification strings, see this Microsoft website.

Example:

  <Device Id="MF\COM4840_5x2_SERIAL" ClassId="{4D36E978-E325-11CE-BFC1-08002BE10318}" /> 

Back to top

The <AdditionalDevice> Element

The <AdditionalDevice> element contains identification information about devices that are not included in Windows XP Service Pack 2 but should be detected during WEPOS Plug and Play detection.

Syntax:

  
    <AdditionalDevice ClassId=”
    class id
    ” SourceDir=”
    driver folder
    ”/>
  

class id is the ID of the class to which the device belongs. There is no default value for class id.

driver folder is the folder containing the driver files.

The driverinstall.xml file may contain multiple <AdditionalDevice> elements.

Each <AdditionalDevice> element contains the following elements. For more information, click an element name in the list below:

Element Description
<File> Specifies the names of files to be installed.
<HardwareId> Specifies the device IDs to be included in WEPOS Setup Plug and Play detection.

Sample <AdditionalDevice> Element

  <AdditionalDevice ClassId="{4d36e971-e325-11ce-bfc1-08002be10318}" SourceDir="\\installfolder\drivers$\Drivers\PCI Multi-IO Controller">
   <!- "Multi-I/O Controller" -->
   <File Name="PCIMIOC.inf" InstallDir="inf" />
   <HardwareId Id="PCI\VEN_1111&DEV_1111&SUBSYS_11111111&REV_10" />
</AdditionalDevice>

Back to top

The <File> Element

The <File> element specifies the names of the files and the directory in which to install them. The <AdditionalDevice> element may contain multiple <File> elements.

Syntax:

  
    <File Name="
    FileName
    " InstallDir=”
    path
    ” />
  

FileName is the name of the driver file to be installed.

The InstallDir=”path” argument is optional. path is a relative path off of %windir% to the directory in which to install the file. If you want to specify the %windir% folder, then type either “.” or “..\windows”. By default (if the InstallDir attribute isn’t specified), .sys files will be installed in the %windir%\system32\drivers folder, .inf files in %windir%\inf, and files with other extensions in %windir%\i386.

Examples

  <File Name="Setup.ini" InstallDir="system32" />
<File Name="Wireless.INF" />

Back to top

The <HardwareId> Element

The <HardwareId> element specifies the device IDs to be included in WEPOS Setup Plug and Play detection. The <AdditionalDevice> element may contain multiple <HardwareId> elements.

Syntax:

  
    <HardwareId Id="
    IDstring
    "/>
  

IDstring is the device ID.

For more information about device identification strings, see this Microsoft website.

Example:

  <HardwareId Id="PCI\VEN_1111&DEV_1111&SUBSYS_11111111&REV_05" /> 

Back to top

© 2005 Microsoft Corporation. All rights reserved.