blob: a3d34f3a339a3440030771f6861ce04ef590bb0a [file] [log] [blame]
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:html="http://www.w3.org/1999/xhtml"
xmlns:wix="http://schemas.microsoft.com/wix/2006/wi"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xse="http://schemas.microsoft.com/wix/2005/XmlSchemaExtension"
targetNamespace="http://schemas.microsoft.com/wix/DifxAppExtension"
xmlns="http://schemas.microsoft.com/wix/DifxAppExtension">
<xs:annotation>
<xs:documentation>
Copyright (c) Microsoft Corporation. All rights reserved.
The use and distribution terms for this software are covered by the
Common Public License 1.0 (http://opensource.org/licenses/cpl1.0.php)
which can be found in the file CPL.TXT at the root of this distribution.
By using this software in any fashion, you are agreeing to be bound by
the terms of this license.
You must not remove this notice, or any other, from this software.
The source code schema for the Windows Installer XML Toolset Driver Install Frameworks for Applications Extension.
</xs:documentation>
</xs:annotation>
<xs:import namespace="http://schemas.microsoft.com/wix/2006/wi" />
<xs:element name="Driver">
<xs:annotation>
<xs:appinfo>
<xse:parent namespace="http://schemas.microsoft.com/wix/2006/wi" ref="Component" />
</xs:appinfo>
<xs:documentation>
Installs a driver. To use this element, you need to reference the WixDifxAppExtension extension and add the
.wixlib appropriate for the target platform (difxapp_x86.wixlib, difxapp_x64.wixlib, or difxapp_ia64.wixlib)
to your project.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="AddRemovePrograms" type="YesNoType">
<xs:annotation>
<xs:documentation>
Specifies that the DIFxApp CustomActions should add an entry in the Add/Remove Programs Control
Panel applet. The default is 'yes'.
</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="DeleteFiles" type="YesNoType">
<xs:annotation>
<xs:documentation>
If set to "yes", configures DIFxApp to delete binary files that were copied to the system from the driver
store when a driver package was installed. If this attribute is set to "no" or not present, DIFxApp does not
remove these files from a system. Note that configuring DIFxApp to delete these files is controlled by the
Flags entry value of the component that represents the driver package in the MsiDriverPackages custom table.
Setting DriverDeleteFiles to "yes" sets the corresponding bit in the Flags entry value. Setting DriverLegacy
to "no" clears the corresponding bit in the Flags entry value. If this attribute is not present, DIFxApp uses
a default value of "no".
</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="ForceInstall" type="YesNoType">
<xs:annotation>
<xs:documentation>
Specifies that the DIFxApp CustomActions should force the installation of a new Plug and Play driver
on a device, even if the currently installed driver on the device is a better match than the new driver.
Specifying 'no' is an excellent way to ensure the DIFxApp CustomActions recognize the Component contains
a driver for installation. The default is null which means the Component does not install a driver via
DIFxApp CustomActions. See <html:a href='http://www.microsoft.com/whdc/driver/install/difxtools.mspx'>http://www.microsoft.com/whdc/driver/install/difxtools.mspx</html:a>
for more information.
</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="Legacy" type="YesNoType">
<xs:annotation>
<xs:documentation>
If set to "yes", configures DIFxApp to install unsigned driver packages and driver packages with missing
files. For more information, see "Installing Unsigned Driver Packages in Legacy Mode" earlier in this paper.
If this attribute is set to "no" or not present, DIFxApp will install only signed driver packages. Note
that configuring DIFxApp to install unsigned drivers is controlled by the Flags entry value of the component
that represents the driver package in the MsiDriverPackages custom table. Setting DriverLegacy to "yes" sets
the corresponding bit in the Flags entry value. Setting DriverLegacy to "no" clears the bit in the Flags
entry value that configures DIFxApp to install unsigned driver packages. If this attribute is not present,
DIFxApp uses a default value of "no".
</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="PlugAndPlayPrompt" type="YesNoType">
<xs:annotation>
<xs:documentation>
Specifies that the DIFxApp CustomActions should prompt the user to connect the Plug and Play
device if it is not connected. The default is 'yes'.
</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="Sequence" type="xs:integer">
<xs:annotation>
<xs:documentation>
Specifies an optional installation sequence number. DIFxApp CustomActions install the driver packages in
an installation package in the order of increasing sequence numbers. The same sequence number can be used
for more than one driver; however, the order in which packages with the same sequence number are actually
installed cannot be determined.
</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:simpleType name="YesNoType">
<xs:annotation>
<xs:documentation>Values of this type will either be "yes" or "no".</xs:documentation>
</xs:annotation>
<xs:restriction base='xs:NMTOKEN'>
<xs:enumeration value="no"/>
<xs:enumeration value="yes"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>