Automatic account creation is now enabled. Captcha authentication required for account creation and editing unless you are trusted here.

Component Element

From WiX Wiki at MindCapers

Jump to: navigation, search

Contents

Description

Component for parent Directory

Windows Installer references

Component Table, Condition Table, Directory Table

Parents

Inner Text

None

Children

Choice of elements (min: 0, max: unbounded)

  • AppId (min: 0, max: unbounded)
  • Category (min: 0, max: unbounded)
  • Class (min: 0, max: unbounded)
  • Condition (min: 0, max: unbounded)
  • CopyFile (min: 0, max: unbounded)
  • CreateFolder (min: 0, max: unbounded)
  • Environment (min: 0, max: unbounded)
  • Extension (min: 0, max: unbounded)
  • File (min: 0, max: unbounded)
  • IniFile (min: 0, max: unbounded)
  • Interface (min: 0, max: unbounded)
  • IsolateComponent (min: 0, max: unbounded)
  • ODBCDataSource (min: 0, max: unbounded)
  • ODBCDriver (min: 0, max: unbounded)
  • ODBCTranslator (min: 0, max: unbounded)
  • ProgId (min: 0, max: unbounded)
  • Registry (min: 0, max: unbounded)
  • RegistryKey (min: 0, max: unbounded)
  • RegistryValue (min: 0, max: unbounded)
  • RemoveFile (min: 0, max: unbounded)
  • RemoveFolder (min: 0, max: unbounded)
  • RemoveRegistryKey (min: 0, max: unbounded)
  • RemoveRegistryValue (min: 0, max: unbounded)
  • ReserveCost (min: 0, max: unbounded)
  • ServiceControl (min: 0, max: unbounded)
  • ServiceInstall (min: 0, max: unbounded)
  • Shortcut (min: 0, max: unbounded)
  • TypeLib (min: 0, max: unbounded)
  • Any Element namespace='##other' processContents='Lax'
    • ComPlusApplication
    • ComPlusApplicationRole
    • ComPlusAssembly
    • ComPlusGroupInApplicationRole
    • ComPlusGroupInPartitionRole
    • ComPlusPartition
    • ComPlusPartitionRole
    • ComPlusPartitionUser
    • ComPlusRoleForComponent
    • ComPlusRoleForInterface
    • ComPlusRoleForMethod
    • ComPlusSubscription
    • ComPlusUserInApplicationRole
    • ComPlusUserInPartitionRole
    • Driver
    • EventSource
    • FileShare
    • MessageQueue
    • MessageQueuePermission
    • PerformanceCategory
    • SqlDatabase
    • SqlScript
    • SqlString
    • User
    • WebAppPool
    • WebDir
    • WebFilter
    • WebProperty
    • WebServiceExtension
    • WebSite
    • WebVirtualDir
    • XmlConfig
    • XmlFile

Attributes

NameTypeDescriptionRequired
IdStringComponent identifier; this is the primary key for identifying components.Yes
ComPlusFlagsIntegerSet this attribute to create a ComPlus entry. The value should be the export flags used during the generation of the .msi file. For more information see the COM+ documentation in the Platform SDK.
DirectoryStringSets the Directory of the Component. If this element is nested under a Directory element, this value defaults to the value of the parent Directory/@Id.
DisableRegistryReflectionYesNoTypeSet this attribute to 'yes' in order to disable registry reflection on all existing and new registry keys affected by this component. When set to 'yes', the Windows Installer calls the RegDisableReflectionKey on each key being accessed by the component. This bit is available with Windows Installer version 4.0 and is ignored on 32-bit systems.
DiskIdIntegerThis attribute must be set either on a Component element or all of its children File elements. The value of this attribute should correspond to the Id attribute of a Media element authored elsewhere. By creating this connection between a component (or particular files), you set the packaging options to the values specified in the Media element (values such as compression level, cab embedding, etc...).
GuidComponentGuidThis value should be a guid that uniquely identifies this component's contents, language, platform, and version. It's also possible to set the value to an empty string to specify an unmanaged component. Unmanaged components are a security vulnerability because the component cannot be removed or repaired by Windows Installer (it is essentially an unpatchable, permanent component). Therefore, a guid should always be specified for any component which contains resources that may need to be patched in the future.Yes
KeyPathYesNoTypeIf this attribute's value is set to 'yes', then the Directory of this Component is used as the KeyPath. To set a Registry key or File as the KeyPath of a component, set the KeyPath attribute to 'yes' on one of those child elements.
LocationEnumerationThis attribute's value should be one of the following:
local
Prevents the component from running from the source or the network (this is the default behavior if this attribute is not set).
source
Enforces that the component can only be run from the source (it cannot be run from the user's computer).
either
Allows the component to run from source or locally.||
NeverOverwriteYesNoTypeIf this attribute is set to 'yes', the installer does not install or reinstall the component if a key path file or a key path registry entry for the component already exists. The application does register itself as a client of the component. Use this flag only for components that are being registered by the Registry table. Do not use this flag for components registered by the AppId, Class, Extension, ProgId, MIME, and Verb tables.
PermanentYesNoTypeIf this attribute is set to 'yes', the installer does not remove the component during an uninstall. The installer registers an extra system client for the component in the Windows Installer registry settings (which basically just means that at least one product is always referencing this component). Note that this option differs from the behavior of not setting a guid because although the component is permanent, it is still patchable (because Windows Installer still tracks it), it's just not uninstallable.
SharedDllRefCountYesNoTypeIf this attribute's value is set to 'yes', the installer increments the reference count in the shared DLL registry of the component's key file. If this bit is not set, the installer increments the reference count only if the reference count already exists.
TransitiveYesNoTypeIf this attribute is set to 'yes', the installer reevaluates the value of the statement in the Condition upon a reinstall. If the value was previously False and has changed to True, the installer installs the component. If the value was previously True and has changed to False, the installer removes the component even if the component has other products as clients.
Win64YesNoTypeSet this attribute to 'yes' to mark this as a 64-bit component. This attribute facilitates the installation of packages that include both 32-bit and 64-bit components. If this bit is not set, the component is registered as a 32-bit component. If this is a 64-bit component replacing a 32-bit component, set this bit and assign a new GUID in the Guid attribute.
Any attribute namespace='##other' processContents='lax'

See Also

Wix Schema, ComponentRef, Media

Content derived from WiX Manual, licensed under the Open Source Initiative OSI - Common Public License Version 1.0. Additional information is licensed under the GNU Free Doc License. Version 3.0.3015.0

Personal tools