WiX 3.6: A Developer's Guide to Windows Installer XML
eBook - ePub

WiX 3.6: A Developer's Guide to Windows Installer XML

Nick Ramirez

Share book
  1. 488 pages
  2. English
  3. ePUB (mobile friendly)
  4. Available on iOS & Android
eBook - ePub

WiX 3.6: A Developer's Guide to Windows Installer XML

Nick Ramirez

Book details
Book preview
Table of contents
Citations

About This Book

In Detail

The cryptic science of Windows Installer can seem far off from the practical task of simply getting something installed. Luckily, we have WiX to simplify the matter. WiX is an XML markup, distributed with an open-source compiler and linker, used to produce a Windows Installer package. It is used by Microsoft and by countless other companies around the world to simplify deployments.

"WiX 3.6: A Developer's Guide to Windows Installer XML" promises a friendly welcome into the world of Windows Installer. Starting off with a simple, practical example and continuing on with increasingly advanced scenarios, the reader will have a well-rounded education by book's end.

With the help of this book, you'll understand your installer better, create it in less time, and save money in the process. No one really wants to devote a lifetime to understanding how to create a hassle-free installer. Learn to build a sophisticated deployment solution targeting the Windows platform in no time with this hands-on practical guide. Here we speed you through the basics and zoom right into the advanced. You'll get comfortable with components, features, conditions and actions. By the end, you'll be boasting your latest deployment victories at the local pub.

Once you've finished "WiX 3.6: A Developer's Guide to Windows Installer XML", you'll realize just how powerful and awesome an installer can really be.

Approach

A step-by-step tutorial with plenty of code and examples to improve your learning curve.

Who this book is for

If you are a developer and want to create installers for software targeting the Windows platform, then this book is for you. You'll be using plenty of XML and ought to know the basics of writing a well-formed document. No prior experience in WiX or Windows Installer is assumed. You should know your way around Visual Studio to compile projects, add project references and tweak project properties.

Frequently asked questions

How do I cancel my subscription?
Simply head over to the account section in settings and click on “Cancel Subscription” - it’s as simple as that. After you cancel, your membership will stay active for the remainder of the time you’ve paid for. Learn more here.
Can/how do I download books?
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
What is the difference between the pricing plans?
Both plans give you full access to the library and all of Perlego’s features. The only differences are the price and subscription period: With the annual plan you’ll save around 30% compared to 12 months on the monthly plan.
What is Perlego?
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, we’ve got you covered! Learn more here.
Do you support text-to-speech?
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Is WiX 3.6: A Developer's Guide to Windows Installer XML an online PDF/ePUB?
Yes, you can access WiX 3.6: A Developer's Guide to Windows Installer XML by Nick Ramirez in PDF and/or ePUB format, as well as other popular books in Informatique & Sciences générales de l'informatique. We have over one million books available in our catalogue for you to explore.

Information

Year
2012
ISBN
9781782160427

WiX 3.6: A Developer's Guide to Windows Installer XML


Table of Contents

WiX 3.6: A Developer's Guide to Windows Installer XML
Credits
About the Author
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers and more
Why Subscribe?
Free Access for Packt account holders
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Errata
Piracy
Questions
1. Getting Started
Introducing Windows Installer XML
What is WiX?
Is WiX for you?
Where can I get it?
Visual Studio package (Votive)
A word about GUIDs
Your first WiX project
XML declaration and Wix element
The Product element
The Package element
The MediaTemplate element
The Media element
The Directory element
The Component element
The File element
The Feature element
Start menu shortcuts
Putting it all together
Adding a user interface
Viewing the MSI database
Orca.exe
Turning logging on during installation
Other resources
Summary
2. Creating Files and Directories
The File element
The DirectoryRef element
The ComponentGroup element
The Fragment element
Harvesting files with heat.exe
Copying and moving files
Copying files you install
Copying existing files
Moving existing files
Installing special-case files
Adding assembly files to the GAC
Installing a TrueType font
Installing 64-bit files
Creating an empty folder
Setting file permissions
Speeding up file installations
Summary
3. Putting Properties and AppSearch to Work
Custom properties
Declaring and setting properties
Referencing properties
Property visibility and scope
Secure properties
Property data types
Predefined Windows Installer properties
Implied properties
Cited properties
AppSearch
DirectorySearch
FileSearch
ComponentSearch
RegistrySearch
IniFileSearch
Summary
4. Improving Control with Launch Conditions and Installed States
The syntax of conditions
Condition syntax
Launch conditions
Feature conditions
Component conditions
Action state
Installed state
Summary
5. Understanding the Installation Sequence
InstallUISequence
UI standard actions
FindRelatedProducts
AppSearch
LaunchConditions
ValidateProductID
CostInitialize
FileCost
CostFinalize
MigrateFeatureStates
ExecuteAction
InstallExecuteSequence
Execute standard actions
InstallValidate
InstallInitialize
ProcessComponents
UnpublishFeatures
RemoveRegistryValues
RemoveShortcuts
RemoveFiles
InstallFiles
CreateShortcuts
WriteRegistryValues
RegisterUser
RegisterProduct
PublishFeatures
PublishProduct
InstallFinalize
Immediate versus deferred
Custom actions
Setting a Windows Installer property
Setting the location of an installed directory
Running embedded VBScript or JScript
Calling an external VBScript or JScript file
Calling a function from a dynamic-link library
Triggering an executable
Sending an error that stops the installation
Rollback custom actions
Accessing properties in a deferred action
Adding conditions to custom actions
Deployment Tools Foundation
The session object
Getting and setting properties
Logging
Showing a message box
Accessing feature and component states
Querying the MSI database
Inserting rows into the MSI database
Summary
6. Adding a User Interface
WiX standard dialog sets
WixUI_Advanced
WixUI_FeatureTree
WixUI_InstallDir
WixUI_Mondo
Customizing a standard dialog set
Creating your own dialogs
ICE20 errors
Adding dialog files
The Dialog element
Scheduling dialogs
Adding TextStyle elements
Adding a tabbable control
Adding a progress dialog
Modal windows
ICE20 revisited
FilesInUse
Error
FatalError
UserExit
Exit
Summary
7. Using UI Controls
Attributes common to all controls
Specific control syntax
PushButton
Text
ScrollableText
Line
GroupBox
Bitmap
Icon
Edit
MaskedEdit
PathEdit
CheckBox
RadioButtonGroup
ComboBox
ListBox
ListView
DirectoryList
DirectoryCombo
SelectionTree
VolumeCostList
VolumeSelectCombo
Billboard
ProgressBar
Summary
8. Tapping into Control Events
Publishing control events
Subscribing to control events
Publish events
DoAction
EndDialog
NewDialog
AddLocal
Publishing a property
Subscribe events
ScriptInProgress
SelectionAction
TimeRemaining
Summary
9. Working from the Command Line
Candle.exe
Response files
.wixobj files
Command-line arguments (compiling)
-arch
-d
-ext
-fips
-I
-nologo
-o
-p
-pedantic
-sfdvital
-ss
-sw
-trace
-v
-wx
Compile-time variables
Custom compiler variables
Environment variables
System variables
Conditional statements and iterations
if...elseif...else
ifdef
ifndef
Iterations
Errors and warnings
Preprocessor extensions
Light.exe
Command-line arguments (linking)
-b
-bf
-binder
-cultures
-d
-dut
-ext
-loc
-nologo
-notidy
-o[ut]
-pedantic
-sadmin
-sadv
-sloc
-sma
-ss
-sts
-sui
-sv
-sw[N]
-usf <output.xml>
-v
-wx[N]
-xo
Command-line arguments (binding)
-bcgg
-cc <path>
-ct <N>
-cub <file.cub>
-dcl:level
-eav
-fv
-ice <ICE>
-pdbout <output.wixpdb>
-reusecab
-sa
-sacl
-sf
-sh
-sice: <ICE>
-sl
-spdb
-sval
Link-time variables
Localization variables
Binder variables
Custom linker variab...

Table of contents