Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
WiX 3.6: A Developer's Guide to Windows Installer XML

You're reading from   WiX 3.6: A Developer's Guide to Windows Installer XML An all-in-one introduction to Windows Installer XML from the installer and beyond

Arrow left icon
Product type Paperback
Published in Dec 2012
Publisher Packt
ISBN-13 9781782160427
Length 488 pages
Edition 1st Edition
Languages
Tools
Arrow right icon
Toc

Table of Contents (23) Chapters Close

WiX 3.6: A Developer's Guide to Windows Installer XML
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
1. Getting Started FREE CHAPTER 2. Creating Files and Directories 3. Putting Properties and AppSearch to Work 4. Improving Control with Launch Conditions and Installed States 5. Understanding the Installation Sequence 6. Adding a User Interface 7. Using UI Controls 8. Tapping into Control Events 9. Working from the Command Line 10. Accessing the Windows Registry 11. Controlling Windows Services 12. Localizing Your Installer 13. Upgrading and Patching 14. Extending WiX 15. Bootstrapping Prerequisites with Burn 16. Customizing the Burn UI Index

Index

A

  • -arch flag / -arch
  • Account attribute / Using WiX to install a service
  • Action attribute / ProgressBar
  • ActionData event / Subscribing to control events
  • action state
    • about / Action state
    • unknown / Action state
    • advertised / Action state
    • absent / Action state
    • local / Action state
    • source / Action state
    • numbers / Action state
    • -1 / Action state
    • 1 / Action state
    • 2 / Action state
    • 3 / Action state
    • 4 / Action state
  • ActionText event / Subscribing to control events
  • AddLocal event / Publish elementaboutPublishing control events, AddLocal
  • AddSource event / Publish elementaboutPublishing control events
  • AdminToolsFolder property / The Directory element
  • AllowRemoval attribute / Authoring a .wixmsp file
  • AppDataFolder property / The Directory element
  • Append attribute / Setting file permissions
  • ApplyBegin method / Setting up the event handlers
  • AppSearch / Copying files you install, AppSearch
    • about / AppSearch
    • DirectorySearch / AppSearch, DirectorySearch
    • FileSearch / AppSearch, FileSearch
    • ComponentSearch / AppSearch, ComponentSearch
    • RegistrySearch / AppSearch, RegistrySearch
    • IniFileSearch / AppSearch, IniFileSearch
  • Arguments attribute / Using WiX to install a service
  • ARPAUTHORIZEDCDPREFIX / Cited properties
  • ARPCOMMENTS / Cited properties
  • ARPCONTACT / Cited properties
  • ARPHELPLINK / Cited properties
  • ARPHELPTELEPHONE / Cited properties
  • ARPINSTALLLOCATION / Cited properties
  • ARPINSTALLLOCATION property / Setting a Windows Installer property
  • ARPNOMODIFY / Cited properties
  • ARPNOREMOVE / Cited properties
  • ARPNOREPAIR / Cited properties
  • ARPPRODUCTICON / Cited properties
  • ARPREADME / Cited properties
  • ARPSIZE / Cited properties
  • ARPSYSTEMCOMPONENT / Cited properties
  • ARPURLINFOABOUT / Cited properties
  • ARPURLUPDATEINFO / Cited properties
  • AssignToProperty attribute / DirectorySearch
  • asyncNoWait / Custom actions
  • asyncWait / Custom actions
  • attributes, File element
    • Hidden / The File element
    • ReadOnly / The File element
    • Vital / The File element
  • AwesomeCompiler class / Parsing custom elements

B

  • -bcgg flag / -bcgg
  • -bf flag / -bf
  • -b flag / -b
  • -binder flag / -binder
  • 64-bit files
    • installing / Installing 64-bit files
  • Before attribute / Custom actions
  • Billboard / Billboard
  • Bitmap / Bitmap
  • Blue attribute / Adding TextStyle elements
  • Bold attribute / Adding TextStyle elements
  • BootstrapperApplicationAttribute / Creating the class library
  • BootstrapperApplication class
    • extending / Extending the BootstrapperApplication class
  • BootstrapperCore.dll / Burn extension points
  • Bootstrapper Project template
    • using / Using the Bootstrapper Project template
    / Referencing the UI in a Burn bundle
  • Build page / The File element
  • bundled MSI
    • user input, passing / Passing user input to a bundled MSI
  • Bundle element
    • about / Using the Bootstrapper Project template
    • describing / Describing the Bundle element
  • bundles
    • updating / Updating existing bundles
    • related bundles, finding / Finding other related bundles
    • Package Cache / Where the packages are cached
  • Burn
    • about / The Fragment element
  • Burn bundle
    • UI, referencing / Referencing the UI in a Burn bundle

C

  • -cc <path> flag / -cc <path>
  • -cg <ComponentGroup> argument / Harvesting files with heat.exe
  • -ct <N> flag / -ct <N>
  • -cub <file.cub> flag / -cub <file.cub>
  • -cultures flag / -cultures
  • -cultures flags / The role of Light.exe
  • Cabinet attribute / The Media element
  • CacheAcquireProgress event / Displaying progress
  • Candle.exe
    • about / Candle.exe
    • Response files / Response files
    • .wixobj files / .wixobj files
    • command-line arguments / Command-line arguments (compiling)
    • -arch flag / -arch
    • -d flag / -d
    • -ext flag / -ext
    • -fips flag / -fips
    • -I flag / -I
    • -nologo flag / -nologo
    • -o flag / -o
    • -p flag / -p
    • -pedantic flag / -pedantic
    • -sfdvital flag / -sfdvital
    • -ss flag / -ss
    • -sw flag / -sw
    • -trace flag / -trace
    • -v flag / -v
    • -wx flag / -wx
  • Category attribute / Creating a new MSI table
  • CDROM attribute / DirectoryCombo
  • Chain element / Using the Bootstrapper Project template, The Chain element
  • ChangePermission attribute / Setting file permissions, Registry permissions
  • check / Custom actions
  • CheckBox / CheckBox
  • CheckExistingTargetPath event / Publish elementaboutPublishing control events
  • CheckTargetPath event / Publish elementaboutPublishing control events
  • cited properties
    • about / Cited properties
    • ARPAUTHORIZEDCDPREFIX / Cited properties
    • ARPCOMMENTS / Cited properties
    • ARPCONTACT / Cited properties
    • ARPINSTALLLOCATION / Cited properties
    • ARPHELPLINK / Cited properties
    • ARPHELPTELEPHONE / Cited properties
    • ARPNOMODIFY / Cited properties
    • ARPNOREMOVE / Cited properties
    • ARPNOREPAIR / Cited properties
    • ARPPRODUCTICON / Cited properties
    • ARPREADME / Cited properties
    • ARPSIZE / Cited properties
    • ARPSYSTEMCOMPONENT / Cited properties
    • ARPURLINFOABOUT / Cited properties
    • ARPURLUPDATEINFO / Cited properties
  • Classification / Authoring a .wixmsp file
  • class library (.dll)
    • creating / Creating the class library
  • CLR / -sa
  • code page / Setting language and code page attributes
  • ComboBox / ComboBox
  • command-line arguments
    • collecting / Collecting command-line arguments
    • /layout / Collecting command-line arguments
    • /help / Collecting command-line arguments
    • /? / Collecting command-line arguments
    • /uninstall / Collecting command-line arguments
    • /install / Collecting command-line arguments
    • /modify / Collecting command-line arguments
    • /repair / Collecting command-line arguments
  • Command-line arguments(binding)
    • -bcgg flag / -bcgg
    • -cc <path> flag / -cc <path>
    • -ct <N> flag / -ct <N>
    • -cub <file.cub> flag / -cub <file.cub>
    • -dclTopicnlevel flag / -dcl:level
    • -eav flag / -eav
    • -fv flag / -fv
    • -ice<ICE> flag / -ice <ICE>
    • -pdbout <output.wixpdb> flag / -pdbout <output.wixpdb>
    • -reusecab flag / -reusecab
    • -sa flag / -sa
    • -sacl flag / -sacl
    • -sf flag / -sf
    • -sh flag / -sh
    • -siceTopicn<ICE> flag / -sice: <ICE>
    • -sl flag / -sl
    • -spdb flag / -spdb
    • -sval flag / -sval
  • Command-line arguments(linking)
    • -b flag / -b
    • -bf flag / -bf
    • -binder flag / -binder
    • -cultures flag / -cultures
    • -d flag / -d
    • -dut flag / -dut
    • -ext flag / -ext
    • -loc flag / -loc
    • -nologo / -nologo
    • -notidy flag / -notidy
    • -o[ut] flag / -o[ut]
    • -pedantic flag / -pedantic
    • -sadmin flag / -sadmin
    • -sadv flag / -sadv
    • -sloc flag / -sloc
    • -sma flag / -sma
    • -ss flag / -ss
    • -sts flag / -sts
    • -sui flag / -sui
    • -sv flag / -sv
    • -sw[N] flag / -sw[N]
    • -usf <output.xml> flag / -usf <output.xml>
    • v flag / -v
    • -wx[N] flag / -wx[N]
    • -xo flag / -xo
  • Comments attribute / Authoring a .wixmsp file
  • CommonAppDataFolder property / The Directory element
  • CommonFiles64Folder property / The Directory element
  • CommonFilesFolder property / The Directory element
  • compile-time variables
    • about / Compile-time variables
    • custom compiler variables / Custom compiler variables
    • environment variables / Environment variables
    • system variables / System variables
  • component condition
    • about / Component conditions
  • Component database / Orca.exe
  • ComponentGroup / The Component element
  • ComponentGroup element
    • about / The ComponentGroup element
  • components / The Directory element
  • ComponentSearch
    • about / ComponentSearch
  • conditional statements
    • if...elseif...else / if...elseif...else
    • ifdef / ifdef
    • ifndef / ifndef
    • Iterations / Iterations
    • warning / Errors and warnings
    • errors / Errors and warnings
  • conditions
    • types / The syntax of conditions
    • launch conditions / The syntax of conditions
    • feature conditions / The syntax of conditions
    • component conditions / The syntax of conditions
    • syntax / Condition syntax
    • adding, to custom actions / Adding conditions to custom actions
  • control attributes
    • about / Attributes common to all controls
  • control event / PushButton
  • control syntax
    • about / Specific control syntax
    • PushButton / PushButton
    • Text / Text
    • ScrollableText / ScrollableText
    • Line / Line
    • GroupBox / GroupBox
    • Bitmap / Bitmap
    • Icon / Icon
    • Edit / Edit
    • MaskedEdit / MaskedEdit
    • PathEdit / PathEdit
    • CheckBox / CheckBox
    • RadioButtonGroup / RadioButtonGroup
    • ComboBox / ComboBox
    • ListBox / ListBox
    • ListView / ListView
    • DirectoryList / DirectoryList
    • DirectoryCombo / DirectoryCombo
    • SelectionTree / SelectionTree
    • VolumeCostList / VolumeCostList
    • VolumeSelectCombo / VolumeSelectCombo
    • Billboard / Billboard
    • ProgressBar / ProgressBar
  • CopyFile element / Moving existing files
  • CostFinalize / Action state, CostFinalize
  • costing / Action state
  • CostInitialize / CostInitialize
  • CreateFolder element / Creating an empty folder
  • CreateLink attribute / Registry permissions
  • CreateRow method / Parsing custom elements
  • CreateShortcuts action / CreateShortcuts
  • CreateSubkeys attribute / Registry permissions
  • CustomActionData property / Accessing properties in a deferred action
  • custom actions
    • conditions, adding / Adding conditions to custom actions
    • typing, to custom element / Tying a custom action to the custom element
  • customactions
    • about / Custom actions
    • Windows Installer property, setting / Setting a Windows Installer property
    • installed directory location, setting / Setting the location of an installed directory
    • embedded VBScript or JScript, running / Running embedded VBScript or JScript
    • external VBScript or JScript file, calling / Calling an external VBScript or JScript file
    • function calling, from dynamic-link library / Calling a function from a dynamic-link library
    • executable file, triggering / Triggering an executable
    • Error attribute, using / Sending an error that stops the installation
  • CustomBootstrapperApplication class / Defining the model
  • custom properties
    • about / Custom properties
    • setting / Declaring and setting properties
    • declaring / Declaring and setting properties
    • referencing / Referencing properties
    • visibility / Property visibility and scope
    • scope / Property visibility and scope
    • secure properties / Secure properties
    • property data types / Property data types
  • custom WiX extension
    • building / Building a custom WiX extension
    • stage, setting / Setting the stage
    • extending / Extending the CompilerExtension class
    • XML schema, adding / Adding an XML schema
    • custom elements, parsing / Parsing custom elements
    • new MSI table, creating / Creating a new MSI table
    • WixExtension class, extending / Extending the WixExtension class

D

  • -dcl
    • level flag / -dcl:level
  • -d flag / -d, -d
  • -dr <DirectoryName> argument / Harvesting files with heat.exe
  • -dut flag / -dut
  • deferred action
    • properties, accessing / Accessing properties in a deferred action
  • deferred stage / Immediate versus deferred, Billboard
  • DelegateCommand / Creating the class library
  • DelegateCommand class / Defining the constructor
  • Delete attribute / Setting file permissions, Registry permissions
  • DependencyExtension / Counting package references
  • Description attribute / The Feature element, Using WiX to install a service, Authoring a .wixmsp file
  • DesktopFolder property / The Directory element
  • DestinationProperty attribute / Copying files you install
  • Detect method / Setting up the event handlers
  • DetectPackageComplete method / Setting up the event handlers
  • Dialog attribute / Scheduling dialogs
  • directories / Implied properties
  • DirectoryCombo / DirectoryCombo
  • Directory element / The Directory element
  • directory element / The Directory element
  • DirectoryList / DirectoryList
  • DirectoryListNew event / Publish elementaboutPublishing control events
  • DirectoryListOpen event / Publish elementaboutPublishing control events
  • Directory property
    • AdminToolsFolder / The Directory element
    • AppDataFolder / The Directory element
    • CommonAppDataFolder / The Directory element
    • CommonFiles64Folder / The Directory element
    • CommonFilesFolder / The Directory element
    • DesktopFolder / The Directory element
    • FavoritesFolder / The Directory element
    • FontsFolder / The Directory element
    • LocalAppDataFolder / The Directory element
    • MyPicturesFolder / The Directory element
    • NetHoodFolder / The Directory element
    • PersonalFolder / The Directory element
    • PrintHoodFolder / The Directory element
    • ProgramFiles64Folder / The Directory element
    • ProgramFilesFolder / The Directory element
    • ProgramMenuFolder / The Directory element
    • RecentFolder / The Directory element
    • SendToFolder / The Directory element
    • StartMenuFolder / The Directory element
    • StartupFolder / The Directory element
    • System16Folder / The Directory element
    • System64Folder / The Directory element
    • SystemFolder / The Directory element
    • TempFolder / The Directory element
    • TemplateFolder / The Directory element
    • WindowsFolder / The Directory element
  • DirectoryRef element
    • about / The DirectoryRef element
  • DirectorySearch
    • about / DirectorySearch, FileSearch
  • DisableSystemRestore attribute / The Chain element
  • Dispatcher.InvokeShutdown method / Defining the constructor
  • Dispatcher.Run() / Extending the BootstrapperApplication class
  • DisplayInternalUI attribute / The Standard Bootstrapper UI
  • DoAction event / Publish elementaboutPublishing control events, DoAction
  • DownloadUrl attribute / Downloading packages
  • DTF
    • about / Calling a function from a dynamic-link library, Deployment Tools Foundation
    • session object / The session object
    • properties, getting / Getting and setting properties
    • properties, setting / Getting and setting properties
    • logging / Logging
    • message box, showing / Showing a message box
    • feature, accessing / Accessing feature and component states
    • component states, accessing / Accessing feature and component states
    • MSI database, querying / Querying the MSI database
    • rows, inserting into MSI database / Inserting rows into the MSI database
  • DWORD / Reading from the registry

E

  • -eav flag / -eav
  • -ext flag / -ext, -ext
  • Edit / Edit
  • EmbedCab attribute / The MediaTemplate element
  • empty folder
    • creating / Creating an empty folder
  • en-us.wxl file / Resizing controls
  • EnableRollback event / Publish elementaboutPublishing control events
  • EndDialog event / Adding a tabbable control, Adding a progress dialog, Publish elementaboutPublishing control events, EndDialog
  • EnumerateSubkeys attribute / Registry permissions
  • Error dialog / Error
  • EULA
    • about / EULA
  • ExeCommand attribute / Triggering an executable
  • ExecuteAction / ExecuteAction
  • Execute attribute / Setting file permissions
  • ExecuteScalar method / Querying the MSI database
  • ExePackage element / The ExePackage element
  • Exit dialog / Exit
  • extension
    • using, in WiX project / Using the extension in a WiX project
  • extensions / Launch conditions

F

  • -fips flag / -fips
  • -fv flag / -fv
  • /foo / Collecting command-line arguments
  • FaceName attribute / Adding TextStyle elements
  • FatalError / FatalError
  • FavoritesFolder property / The Directory element
  • feature / The Feature element
  • feature condition
    • about / Feature conditions
  • feature tree / The Feature element
  • FileCost / Feature conditions, FileCost
  • File element
    • about / The File element
  • file installations
    • speeding up / Speeding up file installations
  • FileKey attribute / Triggering an executable
  • file permissions
    • setting / Setting file permissions
  • files
    • harvesting, heat.exe used / Harvesting files with heat.exe
    • copying, for installation / Copying files you install
    • existing files, copying / Copying existing files
    • existing files, moving / Moving existing files
  • FilesInUse dialog / FilesInUse
  • FilesInUseDlg.wxs file / FilesInUse
  • File table / Speeding up file installations
  • FinalResult property / Defining the model, Setting up the event handlers
  • FindRelatedProducts / FindRelatedProducts
  • FIPS / -fips
  • Fixed attribute / DirectoryCombo
  • Floppy attribute / DirectoryCombo
  • FontsFolder property / The Directory element
  • ForceCreateOnInstall attribute / Writing multiple values
  • Formats tab / Creating a multi-language MSI
  • Fragment element
    • about / The Fragment element

G

  • -g1 argument / Harvesting files with heat.exe
  • -gg argument / Harvesting files with heat.exe
  • GAC / Adding assembly files to the GAC
  • GenericAll attribute / Setting file permissions, Registry permissions
  • GenericExecute attribute / Setting file permissions, Registry permissions
  • GenericRead attribute / Setting file permissions, Registry permissions
  • GenericWrite attribute / Setting file permissions, Registry permissions
  • GetCommandLineArgs method / Collecting command-line arguments
  • GetVariableValue method / Preprocessor extensions
  • green attribute / Adding TextStyle elements
  • GroupBox / GroupBox
  • GUID
    • about / A word about GUIDs

H

  • /help / Collecting command-line arguments
  • heat.exe
    • files, harvesting / Harvesting files with heat.exe
    • about / Harvesting files with heat.exe
    • arguments, adding / Harvesting files with heat.exe
  • HyperlinkLicense user interface
    • about / The HyperlinkLicense user interface

I

  • -ice<ICE> flag / -ice <ICE>
  • -I flag / -I
  • /install / Collecting command-line arguments
  • ICE20
    • about / ICE20 revisited
    • FilesInUse / FilesInUse
    • Error / Error
    • FatalError / FatalError
    • UserExit / UserExit
    • Exit / Exit
  • Icon / Icon
  • Icon attribute / Start menu shortcuts
  • Id attribute / IniFileSearch
  • if statement / if...elseif...else
  • ignore / Custom actions
  • IgnoreChange event / Subscribing to control events
  • immediate phase / Immediate versus deferred, Billboard
  • include file (.wxi) / Compile-time variables
  • INI file / IniFileSearch
  • IniFileSearch
    • about / IniFileSearch
  • installation
    • loggin, turn on / Turning logging on during installation
    • restricting, by operating system / Restricting the install by the operating system
  • Installation Scope screen / WixUI_Advanced
  • Install button / Adding a progress dialog
  • InstallCommand attribute / The ExePackage element
  • Installed keyword / Referencing properties
  • Installedproperty / Launch conditions
  • Installed property / Sending an error that stops the installation
  • installed state
    • about / Installed state
    • -1 / Installed state
    • 1 / Installed state
    • 2 / Installed state
    • 3 / Installed state
    • 4 / Installed state
  • installer
    • building, without Visual Studio / Building an installer without Visual Studio
  • InstallerVersion attribute / The Package element
  • InstallExecuteSequence
    • about / InstallUISequence, InstallExecuteSequence
    • UI standard actions / UI standard actions
    • standard actions, executing / Execute standard actions
    • Immediate / Immediate versus deferred
    • deferred / Immediate versus deferred
  • InstallFiles action / InstallFiles
  • InstallInitialize action / InstallInitialize
  • InstallScope attribute / The Package element
  • InstallValidate action / InstallValidate
  • InstallViewModel class / Declaring the properties and fields
  • Italic attribute / Adding TextStyle elements

J

  • JRE / The ExePackage element

K

  • KB attribute / The MsuPackage element
  • Key attribute / Reading from the registry
  • KeyPath file / The Component element

L

  • -loc flag / -loc
  • /layout / Collecting command-line arguments
  • Language / The Product element
  • launch condition
    • about / Launch conditions
    • examples / Launch conditions
  • LaunchConditions / LaunchConditions
  • Librarian settings / Tying a custom action to the custom element
  • Light / Light.exe
    • Command-line arguments / Command-line arguments (linking)
  • Light.exe
    • about / The role of Light.exe
    • role / The role of Light.exe
  • Line / Line
  • link-time variables
    • about / Link-time variables
    • localization variables / Localization variables
    • binder variables / Binder variables
    • custom linker variables / Custom linker variables
  • Linking / Command-line arguments (linking)
  • ListBox / ListBox
  • ListView / ListView
  • LoadLibraryHelper method / Tying a custom action to the custom element
  • load order group / Adding service dependencies
  • LoadOrderGroup attribute / Using WiX to install a service
  • LocalAppDataFolder property / The Directory element
  • locale identifier / Setting language and code page attributes
  • Localizable attributes / WiX localization files
  • LocalService / Setting the service's user account
  • LocalSystem account / Setting the service's user account
  • logical operators / Condition syntax

M

  • .msp file / Creating a patch from .wixout files
  • /modify / Collecting command-line arguments
  • major update
    • about / Choosing an update type
    • using, criteria / Choosing an update type
    • preparing / Preparing a major upgrade
  • Manufacturer attribute / The Product element
  • mask / MaskedEdit
  • MaskedEdit / MaskedEdit
  • media element / The Media element
  • MediaProperty property / The Fragment element
  • MediaTemplate element / The MediaTemplate element
  • merge modules (.msm) / The Fragment element
  • Message method / ProgressBar
  • Message property / Declaring the properties and fields, Marking up the view
  • Microsoft.Practices.Prism / Creating the class library
  • Microsoft Download Center website / Where can I get it?
  • MigrateFeatureStates / MigrateFeatureStates
  • minor update
    • about / Choosing an update type, The minor upgrade
    • .wixmsp file, authoring / Authoring a .wixmsp file
    • patch, creating from .wixpdb files / Creating a patch from .wixpdb files
    • patch, creating from .without files / Creating a patch from .wixout files
  • modal windows
    • about / Modal windows
  • model
    • about / Extending the BootstrapperApplication class
    • defining / Defining the model
  • Modeless attribute / Adding a progress dialog
  • MSDN website / Setting language and code page attributes
  • MSI database
    • about / Viewing the MSI database
    • Orca / Viewing the MSI database
    • Orca.exe / Orca.exe
  • MsiNTProductType property / Launch conditions
  • MsiPackage element / The MsiPackage element
  • MspPackage element / The MspPackage element
  • MsuPackage element / The MsuPackage element
  • MVVM / Creating the class library
  • MyPicturesFolder property / The Directory element

N

  • -nologo flag / -nologo
  • -notidy flag / -notidy
  • Name attribute / Describing the Bundle element
  • Name sets / Reading from the registry
  • NETFRAMEWORK10 property / Launch conditions
  • NETFRAMEWORK20 property / Launch conditions
  • NETFRAMEWORK20INSTALLROOTDIR64 property / Launch conditions
  • NETFRAMEWORK20INSTALLROOTDIR property / Launch conditions
  • NETFRAMEWORK30 property / Launch conditions
  • NETFRAMEWORK35 property / Launch conditions
  • NETFRAMEWORK40CLIENT property / Launch conditions
  • NETFRAMEWORK40FULLINSTALLROOTDIR64 property / Launch conditions
  • NETFRAMEWORK40FULLINSTALLROOTDIR property / Launch conditions
  • NETFRAMEWORK40FULL property / Launch conditions
  • NETFRAMEWORK45 property / Launch conditions
  • NetHoodFolder property / The Directory element
  • NetworkService / Setting the service's user account
  • NewDialog event / Publish elementaboutPublishing control events, NewDialog
  • Notify attribute / Registry permissions
  • NOTPropertyA / Condition syntax
  • NoWrap attribute / Text
  • NuGet / Creating the class library

O

  • -o flag / -o
  • -o[ut] flag / -o[ut]
  • One Really Cool App / Orca.exe
  • OnExit attribute / FatalError
  • operating system / Launch conditions
  • Options button / The RtfLicense user interface
  • OR / Condition syntax
  • Orca tool / Viewing the MSI database
  • Overridable attribute / WiX localization files
  • own dialogs, creating
    • about / Creating your own dialogs
    • ICE20 errors / ICE20 errors
    • dialog files, adding / Adding dialog files
    • dialog element / The Dialog element
    • dialogs, scheduling / Scheduling dialogs
    • TextStyle elements, adding / Adding TextStyle elements
    • tabbable control, adding / Adding a tabbable control
    • progress dialog, adding / Adding a progress dialog

P

  • -pdbout <output.wixpdb> flag / -pdbout <output.wixpdb>
  • -pedantic flag / -pedantic, -pedantic
  • -p flag / -p
  • Package Cache / Where the packages are cached
  • package element / The Package element
    • about / The Package element
  • PackageGroup elements / PackageGroups
  • package references
    • counting / Counting package references
  • packages
    • downloading / Downloading packages, Downloading packages
  • packages chaining
    • Chain element / The Chain element
    • MsiPackage element / The MsiPackage element
    • ExePackage element / The ExePackage element
    • MspPackage element / The MspPackage element
    • MsuPackage element / The MsuPackage element
  • ParseSuperElement method / Parsing custom elements
  • Password attribute / Using WiX to install a service
  • Patch element / Authoring a .wixmsp file
  • patch file / The minor upgrade
  • patch slipstreaming / The MspPackage element
  • PathEdit / PathEdit
  • PermissionEx element
    • attributes / Setting file permissions
  • PersonalFolder property / The Directory element
  • PlanAction method / Defining the constructor
  • predefined properties, Windows Installer
    • implied properties / Implied properties
    • cited properties / Cited properties
  • preprocessor extension
    • about / Preprocessor extensions
  • preprocessor variable / The File element
  • PrintHoodFolder property / The Directory element
  • Prism / Creating the class library
  • private property / Property visibility and scope
  • Privileged property / Launch conditions
  • ProcessComponents action / ProcessComponents
  • ProductCode / The Product element
  • ProductCode attribute / Start menu shortcuts
  • product element / The Product element
    • about / The Product element
  • ProgramCommandLine attribute / Service recovery with Util:ServiceConfig
  • ProgramFiles64Folder property / The Directory element
  • ProgramFilesFolder property / The Directory element
  • ProgramMenuFolder property / The Directory element
  • ProgressBar / ProgressBar
  • progress bar
    • displaying / Displaying progress
  • progress dialog
    • adding / Adding a tabbable control, Adding a progress dialog
  • ProgressDlg dialog / Inserting rows into the MSI database
  • properties / The Fragment element
  • PropertyA / Condition syntax
  • PropertyA<> / Condition syntax
  • PropertyA<PropertyB / Condition syntax
  • PropertyA= / Condition syntax
  • Property attribute / Edit
  • Property element / The Media element
  • Publish element / PushButton
    • about / Publish elementaboutPublishing control events
    • AddLocal event / Publish elementaboutPublishing control events
    • AddSource event / Publish elementaboutPublishing control events
    • CheckExistingTargetPath event / Publish elementaboutPublishing control events
    • CheckTargetPath event / Publish elementaboutPublishing control events
    • DirectoryListNew event / Publish elementaboutPublishing control events
    • DirectoryListOpen event / Publish elementaboutPublishing control events
    • DirectoryListUp event / Publish elementaboutPublishing control events
    • DoAction event / Publish elementaboutPublishing control events
    • EnableRollback event / Publish elementaboutPublishing control events
    • EndDialog event / Publish elementaboutPublishing control events
    • NewDialog event / Publish elementaboutPublishing control events
    • ReinstallMode event / Publish elementaboutPublishing control events
    • Remove event / Publish elementaboutPublishing control events
    • Reset event / Publish elementaboutPublishing control events
    • SelectionBrowse event / Publish elementaboutPublishing control events
    • SetInstallLevel event / Publish elementaboutPublishing control events
    • SetTargetPath event / Publish elementaboutPublishing control events
    • SpawnDialog event / Publish elementaboutPublishing control events
    • SpawnWaitDialog event / Publish elementaboutPublishing control events
    • ValidateProductID event / Publish elementaboutPublishing control events
  • Publish events
    • about / Publish events
    • DoAction / DoAction
    • EndDialog / EndDialog
    • NewDialog / NewDialog
    • AddLocal / AddLocal
    • property, publishing / Publishing a property
  • PublishFeatures action / PublishFeatures
  • PublishProduct action / PublishProduct, InstallFinalize
  • PushButton / PushButton
  • PushButton PushButton / PushButton
  • pyro.exe / Creating a patch from .wixpdb files

R

  • -reusecab flag / -reusecab
  • /repair / Collecting command-line arguments
  • RadioButtonGroup / RadioButtonGroup
  • RaisePropertyChanged method / Declaring the properties and fields
  • RAMDisk attribute / DirectoryCombo
  • Raw / IniFileSearch
  • Read attribute / Setting file permissions, Registry permissions
  • ReadPermission attribute / Setting file permissions, Registry permissions
  • RecentFolder property / The Directory element
  • Red attribute / Adding TextStyle elements
  • RegisterProduct action / RegisterProduct
  • registry
    • reading from / Reading from the registry
    • writing to / Writing to the registry
    • single value, writing / Writing a single value
    • multiple value, writing / Writing multiple values
    • NeverOverwrite, setting / Setting NeverOverwrite
    • permissions / Registry permissions
  • RegistryKey element / Writing multiple values
  • RegistrySearch
    • about / RegistrySearch
  • RegistrySearch element / Reading from the registry
  • RegistryValue element / Start menu shortcuts
  • registry values
    • removing / Removing registry values
    • all keys, removing / Remove all keys recursively
    • single value, removing / Removing a single value
    • copying / Copying registry values
  • REG_BINARY / Reading from the registry
  • REG_EXPAND_SZ / Reading from the registry
  • REG_MULTI_SZ / Reading from the registry
  • REG_SZ / Reading from the registry
  • ReinstallMode event / Publish elementaboutPublishing control events
  • Remote attribute / DirectoryCombo
  • Removable attribute / DirectoryCombo
  • Remove event / Publish elementaboutPublishing control events
  • RemoveFiles action / RemoveFiles
  • REMOVE property / Feature conditions
  • RemoveRegistryKey element / Remove all keys recursively
  • RemoveShortcuts action / RemoveShortcuts
  • repair / The Component element, The File element
  • RequiredVersion attribute / XML declaration and Wix element
  • Reset event / Publish elementaboutPublishing control events
  • ResetPeriodInDays attribute
    • about / Service recovery with Util:ServiceConfig
  • resiliency / The Component element
  • ResolveSource event / Downloading packages
  • resources, WiX / Other resources
  • response file / Response files
  • Result property / Setting up the event handlers
  • Return attribute / Custom actions
  • RollbackBoundary elements / Rollback boundaries
  • rollback custom actions
    • about / Rollback custom actions
  • Root attribute / Reading from the registry
  • RtfLicense user interface
    • about / The RtfLicense user interface
  • Run method / Extending the BootstrapperApplication class

S

  • -sacl flag / -sacl
  • -sadmin flag / -sadmin
  • -sadv flag / -sadv
  • -sa flag / -sa
  • -sfdvital flag / -sfdvital
  • -sf flag / -sf
  • -sfrag argument / Harvesting files with heat.exe
  • -sh flag / -sh
  • -sice
    • <ICE> flag / -sice: <ICE>
  • -sl flag / -sl
  • -sloc flag / -sloc
  • -sma flag / -sma
  • -spdb flag / -spdb
  • -srd argument / Harvesting files with heat.exe
  • -ss flag / -ss, -ss
  • -sts flag / -sts
  • -sval flag / -sval
  • -sw flag / -sw
  • sc.exe
    • using / Using sc.exe
  • ScriptInProgress event / Subscribing to control events, ScriptInProgress
  • ScrollableText / ScrollableText
  • Security tab / Setting file permissions
  • SelectionAction event / Subscribing to control events, SelectionAction
  • SelectionBrowse event / Publish elementaboutPublishing control events
  • SelectionDescription event / Subscribing to control events
  • SelectionNoItems event / Subscribing to control events
  • SelectionPath event / Subscribing to control events
  • SelectionPathOn event / Subscribing to control events
  • SelectionSize event / Subscribing to control events
  • SelectionTree / SelectionTree
  • SendToFolder property / The Directory element
  • service
    • uninstalling / Starting, stopping, and uninstalling a service
    • stopping / Starting, stopping, and uninstalling a service
    • starting / Starting, stopping, and uninstalling a service
    • user account, setting / Setting the service's user account
  • Service Control Manager (SCM) / Creating a simple Windows service
  • service dependencies
    • adding / Adding service dependencies
  • ServiceInstall / Using WiX to install a service
  • ServicePackLevel property / Launch conditions
  • SetInstallLevel event / Publish elementaboutPublishing control events
  • SetProgress event / Adding a progress dialog, Subscribing to control events
  • SetProperty element / Setting a Windows Installer property
  • ShowMessageImmediate method / Tying a custom action to the custom element
  • simple Windows service
    • creating / Creating a simple Windows service
  • size attribute / Adding TextStyle elements
  • small update
    • about / Choosing an update type, The small update
  • SomeAssembly.dll / The File element
  • Source attribute / Harvesting files with heat.exe
  • SourceFile attribute / The MsuPackage element
  • Source not found error / Error messages
  • SpawnDialog event / Modal windows, Publish elementaboutPublishing control events
  • SpawnWaitDialog event / Publish elementaboutPublishing control events
  • special-case files
    • installing / Installing special-case files
    • assembly files, adding to GAC / Adding assembly files to the GAC
    • TrueType font, installing / Installing a TrueType font
  • src\Setup\WixBA folder / Burn extension points
  • standard actions, InstallExecuteSequence
    • InstallValidate / InstallValidate
    • InstallInitialize / InstallInitialize
    • ProcessComponents / ProcessComponents
    • UnpublishFeatures / UnpublishFeatures
    • RemoveRegistryValues / RemoveRegistryValues
    • RemoveShortcuts / RemoveShortcuts
    • RemoveFiles / RemoveFiles
    • InstallFiles / InstallFiles
    • CreateShortcuts / CreateShortcuts
    • WriteRegistryValues / WriteRegistryValues
    • RegisterUser / RegisterUser
    • RegisterProduct / RegisterProduct
    • PublishFeatures / PublishFeatures
    • PublishProduct / PublishProduct
    • InstallFinalize / InstallFinalize
  • Standard Bootstrapper UI
    • about / The Standard Bootstrapper UI
    • RtfLicense user interface / The RtfLicense user interface
    • HyperlinkLicense user interface / The HyperlinkLicense user interface
  • standard dialog sets, WiX
    • about / WiX standard dialog sets
    • WixUI_Advanced / WixUI_Advanced
    • WixUI_FeatureTree / WixUI_FeatureTree
    • WixUI_InstallDir / WixUI_InstallDir
    • WixUI_Mondo / WixUI_Mondo
    • customizing / Customizing a standard dialog set
  • StartMenuFolder property / The Directory element
  • StartupFolder property / The Directory element
  • strike attribute / Adding TextStyle elements
  • Subscribe element
    • about / Subscribing to control events
    • ActionData event / Subscribing to control events
    • ActionText event / Subscribing to control events
    • IgnoreChange event / Subscribing to control events
    • events / Subscribing to control events
    • ScriptInProgress event / Subscribing to control events
    • SelectionAction event / Subscribing to control events
    • SelectionDescription event / Subscribing to control events
    • SelectionNoItems event / Subscribing to control events
    • SelectionPath event / Subscribing to control events
    • SelectionPathOn event / Subscribing to control events
    • SelectionSize event / Subscribing to control events
    • SetProgress event / Subscribing to control events
    • TimeRemaining event / Subscribing to control events
  • Subscribe events
    • about / Subscribe events
    • ScriptInProgress / ScriptInProgress
    • SelectionAction / SelectionAction
    • TimeRemaining / TimeRemaining
  • Synchronize attribute / Setting file permissions, Registry permissions
  • System16Folder property / The Directory element
  • System64Folder property / The Directory element
  • SystemFolder property / The Directory element

T

  • -t / Creating a multi-language MSI
  • -trace flag / -trace
  • TakeOwnership attribute / Setting file permissions, Registry permissions
  • Target attribute / Start menu shortcuts
  • TempFolde property / The Directory element
  • TemplateFolder property / The Directory element
  • Template Summary property / The Package element
  • Text / Text
  • ThemeFile attribute / The HyperlinkLicense user interface
  • the Value attribute / Writing a single value
  • ThmViewer utility / The HyperlinkLicense user interface
  • TimeRemaining event / Subscribing to control events, TimeRemaining
  • tools, WiX
    • Candle.exe / Where can I get it?
    • Light.exe / Where can I get it?
    • Lit.exe / Where can I get it?
    • Dark.exe / Where can I get it?
    • Heat.exe / Where can I get it?
    • Insignia.exe / Where can I get it?
    • Melt.exe / Where can I get it?
    • Torch.exe / Where can I get it?
    • Shine / Where can I get it?
    • Smoke.exe / Where can I get it?
    • Pyro.exe / Where can I get it?
    • WixCop.exe / Where can I get it?
    • WixUnit.exe / Where can I get it?
    • Lux.exe / Where can I get it?
    • Nit.exe / Where can I get it?
  • Tools Settings tab / Installing 64-bit files
  • Torch / Creating a multi-language MSI
  • transform files / Creating a multi-language MSI
  • Type 2 / Triggering an executable
  • Type 5 (JScript) / Calling an external VBScript or JScript file
  • Type 6 (VBScript) / Calling an external VBScript or JScript file
  • Type 19 custom action / Sending an error that stops the installation
  • Type 34 custom action / Triggering an executable
  • Type 35custom action / Setting the location of an installed directory
  • Type 37(VBScript) / Running embedded VBScript or JScript
  • Type 38 (JScript) / Running embedded VBScript or JScript
  • Type 51custom action / Setting a Windows Installer property
  • type attribute / Creating a new MSI table
  • Type attribute / IniFileSearch, Reading from the registry
    • data / Writing a single value

U

  • /uninstall / Collecting command-line arguments
  • UI
    • localizing / Localizing the UI
  • UI localization
    • about / Localizing the UI
    • error messages / Error messages
    • progress bar messages / Progress bar messages
    • EULA / EULA
    • controls, resizing / Resizing controls
    • multi-language MSI, creating / Creating a multi-language MSI
  • UI standard actions
    • about / UI standard actions
    • FindRelatedProducts / FindRelatedProducts
    • AppSearch / AppSearch
    • LaunchConditions / LaunchConditions
    • ValidateProductID / ValidateProductID
    • CostInitialize / CostInitialize
    • FileCost / FileCost
    • CostFinalize / CostFinalize
    • MigrateFeatureStates / MigrateFeatureStates
    • ExecuteAction / ExecuteAction
  • Underline attribute / Adding TextStyle elements
  • UnexpectedAttribute method / Parsing custom elements
  • UnexpectedElement method / Parsing custom elements
  • Uninstall button / Extending the BootstrapperApplication class
  • UninstallCommand attribute / The ExePackage element
  • UnpublishFeatures action / UnpublishFeatures
  • unreal tables / -dut
  • UnsupportedExtensionAttribute method / Parsing custom elements
  • update
    • per-machine / Per-user or per-machine
    • per-user / Per-user or per-machine
  • update planning
    • about / Planning for updates
    • major updates / Planning for updates
    • small updates / Planning for updates
    • minor updates / Planning for updates
    • update type, choosing / Choosing an update type
  • UpgradeCode attribute / Updating existing bundles
  • User / Setting file permissions
  • UserExit dialog / UserExit
  • user interface
    • adding / Adding a user interface
  • Util
    • ServiceConfigTopicnservice recovery / Service recovery with Util:ServiceConfig
  • util namespace / Setting file permissions

V

  • -var <VarName> argument / Harvesting files with heat.exe
  • -v flag / -v
  • ValidateProductID / ValidateProductID
  • ValidateProductID event / Publish elementaboutPublishing control events
  • Version / Describing the Bundle element
  • Version attribute / The Product element
  • view
    • about / Extending the BootstrapperApplication class
    • marking up / Marking up the view
  • viewmodel
    • about / Extending the BootstrapperApplication class
    • implementing / Implementing the viewmodel
  • viewmodel implementation
    • about / Implementing the viewmodel
    • fields, declaring / Declaring the properties and fields
    • properties, declaring / Declaring the properties and fields
    • constructor, defining / Defining the constructor
    • event handlers, setting up / Setting up the event handlers
    • helper methods / Helper methods
  • Vital attribute / Using WiX to install a service, The MsiPackage element
  • VolumeCostList / VolumeCostList
  • VolumeSelectCombo / VolumeSelectCombo
  • Votive / Visual Studio package (Votive)

W

  • -wx flag / -wx
  • Window class / Marking up the view
  • WindowsFolder property / The Directory element
  • Windows Installer
    • about / Where can I get it?
    • Visual Studio package / Visual Studio package (Votive)
    • predefined properties / Predefined Windows Installer properties
  • WINDOWSSDKCURRENTVERSION property / Launch conditions
  • WireUpEventHandlers method / Helper methods
  • WiX
    • about / Introducing Windows Installer XML, What is WiX?
    • options / What is WiX?
    • features / Is WiX for you?
    • latesht version / Where can I get it?
    • tools / Where can I get it?
    • new version, installing / Where can I get it?
    • Visual Studio package / Visual Studio package (Votive)
    • project templates / Visual Studio package (Votive)
    • GUIDs / A word about GUIDs
    • project / Your first WiX project
    • resources / Other resources
    • standard dialog sets / WiX standard dialog sets
    • using, for service installation / Using WiX to install a service
    • localization files / WiX localization files
  • WiX extension / Setting the stage
  • WixFailWhenDeferred / Rollback custom actions
  • WiX library (.wixlib) / The Fragment element
  • WiX localization files
    • about / WiX localization files
    • example / WiX localization files
  • WixNetFxExtension / Launch conditions
  • WiX project
    • about / Your first WiX project
    • Wix element / XML declaration and Wix element
    • XML declaration / XML declaration and Wix element
    • product element / The Product element
    • package element / The Package element
    • media template element / The MediaTemplate element
    • media element / The Media element
    • directory element / The Directory element
    • component element / The Component element
    • file element / The File element
    • feature element / The Feature element
    • Start Menu shortcuts / Start menu shortcuts
    • summing up / Putting it all together
    • extension, using / Using the extension in a WiX project
  • WixUI_Advanced / WixUI_Advanced
  • WixUI_Advanced attribute / Adding a user interface
  • WixUI_FeatureTree / WixUI_FeatureTree
  • WixUI_FeatureTree attribute / Adding a user interface
  • WixUI_InstallDir / WixUI_InstallDir
  • WixUI_InstallDir attribute / Adding a user interface
  • WixUI_Mondo / WixUI_Mondo
  • WixUI_Mondo attribute / Adding a user interface
  • Write attribute / Setting file permissions, Registry permissions
  • WriteRegistryValues action / WriteRegistryValues

X

  • XAML / Burn extension points
  • xmlns / XML declaration and Wix element
lock icon The rest of the chapter is locked
arrow left Previous Section
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime