Well, the reality is, no one has done it correctly yet. InstallAware, Wise,
InstallShield, Indigo, WiX ... you name it.... with MSI 4.5 coming and the
new Agility through Composition story, there is a whole lot of work still to be
done in this space.
Will WiX be tackling this in the near future or will the commercial boys be
the first to the table?
Brett Kapilik <[EMAIL PROTECTED]> wrote:
Our product "Setup Factory for Windows Installer" ships with a completely
scriptable bootstrap maker utility. Although in the simple case you can
configure and have it built automatically with your MSI file from the design
environment, the underlying technology is a console app (modeled after WiX
itself) that allows you to pass in an XML confguration file and your custom
script (based on the Lua programming language) and builds an exe for you. It
uses LZMA compression. It is 100% scriptable from front to back - with over 200
high-level actions to do stuff like extracting files, call MSI API functions,
download from Web sites, etc. It allows you to pack as many MSIs into the
bootstrapper as you want and then conditionally extract and run them at
runtime. It also supports "plugin-able" dependency modules which are
collections of pre-configured scripts and files to allow you to detect and
install .NET, MSI engine, etc.
I am only jumping in here with a shameless plug because it is totally
relevant to the thread. Honestly, I think that the cost of the software is well
worth it even if only to use the bootstrap maker (although its ability to
generate WiX files is also very cool). I just couldn't let this thread end with
someone wishing the InstallAware would make such a tool. :)
- Brett Kapilik (Indigo Rose Corporation)
---------------------------------
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Peterson, Joel
Sent: Monday, June 25, 2007 11:07 AM
To: Christopher Painter; Bob Arnson; John Vottero
Cc: wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] msi to exe
I think half the subscribers to this mailing list are waiting for that. :)
Joel Peterson
Quality Engineer
[EMAIL PROTECTED]
Quality Assurance Engineer
---------------------------------
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Christopher
Painter
Sent: Monday, June 25, 2007 8:09 AM
To: Bob Arnson; John Vottero
Cc: wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] msi to exe
I didn't want to beat this thread to death, but that's exactly right. From
my perspective I'm trying to investigate how WiX can make my life easier then
InstallShield and I have to admit, while I know how to program a bootstrapper
from scratch, I'm completly spoiled in that I'm used to simple clicking a few
release settings and have InstallShield take care of it for me. The thought of
rolling my own bootstrapper and then hiding it inside IExpress just makes me
shiver.
Now if a program like WiXAware was to have a similar story that authored wxs
files that told candle/light/whatever to do a similar thing, I'd be one step
closer to saying goodbye to InstallShield.
Bob Arnson <[EMAIL PROTECTED]> wrote:
John Vottero wrote: v\:* { BEHAVIOR: url(#default#VML) } o\:* {
BEHAVIOR: url(#default#VML) } w\:* { BEHAVIOR: url(#default#VML) } .shape
{ BEHAVIOR: url(#default#VML) } @font-face { font-family: Cambria
Math; } @font-face { font-family: Cambria; } @font-face { font-family:
Calibri; } @font-face { font-family: Tahoma; } @font-face {
font-family: Consolas; } @page Section1 {size: 8.5in 11.0in; margin: 1.0in
1.0in 1.0in 1.0in; } P.MsoNormal { FONT-SIZE: 11pt; MARGIN: 0in 0in 0pt;
COLOR: black; FONT-FAMILY: "Calibri","sans-serif" } LI.MsoNormal {
FONT-SIZE: 11pt; MARGIN: 0in 0in 0pt; COLOR: black; FONT-FAMILY:
"Calibri","sans-serif" } DIV.MsoNormal { FONT-SIZE: 11pt; MARGIN: 0in 0in
0pt; COLOR: black; FONT-FAMILY: "Calibri","sans-serif" } H4 { FONT-WEIGHT:
bold; FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times
New Roman","serif"; mso-style-priority: 9; mso-style-link: "Heading 4 Char";
mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } A:link { COLOR:
blue; TEXT-DECORATION: underline; mso-style-priority: 99 } SPAN.MsoHyperlink
{ COLOR: blue; TEXT-DECORATION: underline; mso-style-priority: 99 }
A:visited { COLOR: purple; TEXT-DECORATION: underline; mso-style-priority: 99
} SPAN.MsoHyperlinkFollowed { COLOR: purple; TEXT-DECORATION: underline;
mso-style-priority: 99 } P { FONT-SIZE: 12pt; MARGIN-LEFT: 0in;
MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman","serif"; mso-style-priority:
99; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto } PRE {
FONT-SIZE: 10pt; MARGIN: 0in 0in 0pt; COLOR: black; FONT-FAMILY: "Courier New";
mso-style-priority: 99; mso-style-link: "HTML Preformatted Char" }
SPAN.Heading4Char { FONT-WEIGHT: bold; COLOR: #4f81bd; FONT-STYLE: italic;
FONT-FAMILY: "Cambria","serif"; mso-style-priority: 9; mso-style-link: "Heading
4"; mso-style-name: "Heading 4 Char" } SPAN.HTMLPreformattedChar { COLOR:
black; FONT-FAMILY: Consolas; mso-style-priority: 99; mso-style-link: "HTML
Preformatted"; mso-style-name: "HTML Preformatted Char" } SPAN.EmailStyle21 {
COLOR: windowtext; FONT-FAMILY: "Calibri","sans-serif"; mso-style-type:
personal } SPAN.EmailStyle22 { COLOR: #1f497d; FONT-FAMILY:
"Calibri","sans-serif"; mso-style-type: personal } SPAN.EmailStyle23 {
COLOR: #1f497d; FONT-FAMILY: "Calibri","sans-serif"; mso-style-type: personal
} SPAN.EmailStyle24 { COLOR: #1f497d; FONT-FAMILY: "Calibri","sans-serif";
mso-style-type: personal } SPAN.EmailStyle25 { COLOR: #1f497d; FONT-FAMILY:
"Calibri","sans-serif"; mso-style-type: personal } SPAN.EmailStyle26 {
COLOR: #1f497d; FONT-FAMILY: "Calibri","sans-serif"; mso-style-type: personal
} SPAN.EmailStyle27 { COLOR: #1f497d; FONT-FAMILY: "Calibri","sans-serif";
mso-style-type: personal } SPAN.EmailStyle28 { COLOR: #1f497d; FONT-FAMILY:
"Calibri","sans-serif"; mso-style-type: personal }
SPAN.EmailStyle29 { COLOR: #1f497d; FONT-FAMILY: "Calibri","sans-serif";
mso-style-type: personal } SPAN.EmailStyle30 { COLOR: #1f497d; FONT-FAMILY:
"Calibri","sans-serif"; mso-style-type: personal-reply } .MsoChpDefault {
mso-style-type: export-only } DIV.Section1 { page: Section1 } We
use iexpress to bundle everything into a self extracting executable. We then
add a manifest to that executable and sign it. When the self extracting
executable unpacks, it runs our bootstrapper which does all the detecting etc.
and then invokes msiexec with the correct parameters.
That's an important distinction: IExpress is a self-extractor, not a
bootstrapper. Mostly because IExpress is dumb and doesn't give you any control
like a bootstrapper.
-- sig://boB http://joyofsetup.com/
---------------------------------
Park yourself in front of a world of choices in alternative vehicles.
Visit the Yahoo! Auto Green Center.
---------------------------------
Be a better Heartthrob. Get better relationship answers from someone who knows.
Yahoo! Answers - Check it out.
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users