Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Capturing user responses to create MSI transform

206 views
Skip to first unread message

Harinder Singh

unread,
Feb 28, 2005, 7:59:26 PM2/28/05
to
I am working on a tool to capture responses in an
installation and create an MSI transform file.

The SDK documentation mentions that MsiSetExternalUI could
be used to monitor the installation. Does this API provide
the user selection data or just the state transition
information? Is there any other API that I could use to
capture the user responses?

Harinder

Michael Sanford [MVP]

unread,
Mar 1, 2005, 6:08:56 AM3/1/05
to
Hello Harinder,

The API won't really do it for you, but all you have to do is query the _Property
table while the install is executing. Grab all of the props and values when
the UI starts, and again when the UI ends. Do a diff of the two to find
properties that were hanged by the UI sequence, and boom, you have what you
need to create your transform.

Michael Sanford
Windows Installer MVP

Harinder Singh

unread,
Mar 1, 2005, 2:17:01 PM3/1/05
to
Hello Michael,

Thanks for your response. Does this mean that the installer
service updates the _Property(or Property?) table when it
installs with the values a user enters and copies the
updated msi file into the xxxx.msi under the
windows\Installer directory?

I experimented with a small .msi that I have. The only user
provided values were 1) typical/custom and 2) installation
path. When I open the associated .msi (from
windows\Installer) in orca I do not see the _Property
table. The Property table is there but does not have the
values for user specified properties.

Harinder

>.
>

Michael Sanford [MVP]

unread,
Mar 2, 2005, 5:29:13 AM3/2/05
to
Hello Harinder,

It's a temp table created in memory at install time. It's used to store
the values of all properties while the installation is executing only. None
of it's values are persisted anywhere, and it's destroyed when the install
completes.

Rich [Microsoft Windows Installer MVP]

unread,
Mar 5, 2005, 2:17:07 PM3/5/05
to
[Please do not mail me a copy of your followup]

"Harinder Singh" <anon...@discussions.microsoft.com> spake the secret code
<04c801c51df9$ea8a6dd0$3501...@phx.gbl> thusly:

>I am working on a tool to capture responses in an
>installation and create an MSI transform file.

MSI doesn't really support response files. Instead, the idea is that
the UI sequence interviews the user to supply values for public
properties that configure the installation. The public properties are
used by the server side execution of the script.

If you perform an administrative installation, you are given a chance
to provide a UI specifically for the purpose of letting administrators
predefine property values. These property values are persisted in the
MSI of the administrative image in an embedded stream, not in the
Property table. In this way you can provide administrators a way to
customize the install.

The idea behind using public properties is that you could create a
command-line that runs the install with reduced or no UI and supplies
the necessary values of the public properties on the command-line as
name=value arguments.

I would suggest trying the administrative image install in order to
capture the user input for configuring an installation image.
--
"The Direct3D Graphics Pipeline"-- code samples, sample chapter, FAQ:
<http://www.xmission.com/~legalize/book/>
Pilgrimage: Utah's annual demoparty
<http://pilgrimage.scene.org>

Harinder Singh

unread,
Mar 7, 2005, 3:08:34 PM3/7/05
to

>MSI doesn't really support response files. Instead, the
idea is that
>the UI sequence interviews the user to supply values for
public
>properties that configure the installation. The public
properties are
>used by the server side execution of the script.

Thanks for the response. Do all the user answers map to
public properties? As Michael suggested before, does a diff
of properties give all the selections a user made in the UI
sequence interview?

Admin install may not work for me, I am seeing the tool as
an end-user tool to capture the installation sequence which
can be later re-run if a system gets re-imaged.


Harinder

Rich [Microsoft Windows Installer MVP]

unread,
Mar 8, 2005, 2:16:28 PM3/8/05
to
[Please do not mail me a copy of your followup]

"Harinder Singh" <anon...@discussions.microsoft.com> spake the secret code

<3e6101c52351$71180590$a501...@phx.gbl> thusly:

>Thanks for the response. Do all the user answers map to
>public properties?

If you author your UI properly, yes. You decide what properties are
used (public or private) in your UI, not Windows Installer.

>As Michael suggested before, does a diff
>of properties give all the selections a user made in the UI
>sequence interview?

Again, if you author your UI properly, yes.

>Admin install may not work for me, I am seeing the tool as
>an end-user tool to capture the installation sequence which
>can be later re-run if a system gets re-imaged.

You can write a custom action to create a simple vbscript file (or
even a batch file) that supplies the necessary public property values
based on what the user chose in the UI.

coolk...@gmail.com

unread,
Jul 22, 2014, 6:51:23 AM7/22/14
to
Hi Harinder, I am working on a similar requirement.. Were you able to get around with writing such piece of code that would create response transform using APIs purely... How to trigger MSI in "Response Transform" creation mode only without actually installing it?
0 new messages