No, this had no effect. the little status window did not change. Your 
instructions were pretty simple, I just added a <UI> element to the WIX 
script, referring to the ID of the custom action, and I expected the 
message to appear while the CA was running. The CA takes several seconds, 
but there was no change to the message on the msiexec status window and 
nothing appeared in the verbose msiexec session log to indicate that the 
<UI> element was processed. There are no build errors or warnings.

Maybe I should mention that my installer has a custom UI wizard. That 
works fine, but my point is that this installer does have a UI prior to the 
msiexec status window appearing.

Thanks,
Gary

----- Original Message ----
From: Christopher Painter <chr...@de...> - 2010-08-07 02:09
 
If you just want a simple message to be displayed, consider using the 
ActionText table ( ProgressText element )
You shouldn't need a CA to do that.

http://jonorossi.com/blog/archive/2008/07/20/wix-progress-text-for-a-custom-
action.aspx

http://msdn.microsoft.com/en-us/library/aa367516(VS.85).aspx 
Christopher Painter, Author of Deployment Engineering Blog
Have a hot tip, know a secret or read a really good thread that deserves 
attention? E-Mail Me

----- Original Message ----
From: Gary Gocek <g...@gocek.org>
To: wix-users@lists.sourceforge.net
Sent: Fri, August 6, 2010 8:02:15 PM
Subject: [WiX-users] Updating msiexec status window from custom action

Hi all, I work on a wix-based, C# .NET installer, currently targeting
Windows Server 2008 installs with msiexec v4 or greater. The installer
invokes a deferred custom action. This works as expected. Files are
deployed, custom action tasks are performed, errors result in a clean
rollback, etc.

While the installer is running, msiexec pops up a rectangular status 
window
with a title (the application name), a message in the body of the window
("please wait while Windows configures <application>"), another message
("time remaining: 7 seconds"), and a status bar showing the percentage
completed. By default, the time remaining and status bar only consider the
file deployment, prior to the deferred CA, so the time remaining gets 
stuck
while the CA runs.

I want to insert a message into the body of that msiexec status window 
that
says, "be patient, creating databases" or whatever. I don't care what the
time remaining says or where the status bar is.

I have found several related forum posts, some complicated and some 
simple,
but nothing has worked for me. For example, this has no visible effect and
throws no exceptions:
    var record = new Record(3);
    record[1] = "caller id" + DateTime.Now.Ticks.ToString(); // ensures
every ActionStart is different
    record[2] = "custom message";
    record[3] = "";
    MessageResult mr = session.Message(InstallMessage.ActionStart, 
record);

This is logged in the msiexec log, but how do I hack the msiexec status
window to show my own messages? Ultimately, this should be localizable, 
but
just get me through the first step of displaying any message at all.

Thanks,
Gary 
 





------------------------------------------------------------------------------
This SF.net email is sponsored by 

Make an app they can't live without
Enter the BlackBerry Developer Challenge
http://p.sf.net/sfu/RIM-dev2dev 
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to