Thanks, MsiSetExternalUIRecord is exactly what I needed.

-Andy

-----Original Message-----
From: Wilson, Phil [mailto:phil.wil...@invensys.com] 
Sent: Wednesday, August 11, 2010 1:45 PM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] External UI Handling FilesInUse

I have only a couple of observations: 

1. Using MsiSetExternalUIRecord works better because you get a number of 
records that you can inspect rather than trying to decode message formats. Each 
record contains process, file name I think etc. If you actually want a message 
then MsiFormatRecord() will make one.  

2. MsiSetExternalUIRecord callbacks for FilesInUse sometimes contain empty 
records. It's almost as if Windows populates something with all the candidates 
but then erases the ones it can deal with, leaving holes. If this happens with 
the non-record callback it might look strange. Also, I believe I tried to deal 
with FilesInUse in a non-record callback and I *think* the process names 
weren't actually in the message - they were in a message just before (or 
after?), so if you monitor all the messages you might see something like that. 

Phil Wilson 


-----Original Message-----
From: Andy Glass [mailto:agl...@laserfiche.com] 
Sent: Wednesday, August 11, 2010 11:55 AM
To: General discussion for Windows Installer XML toolset.
Subject: [WiX-users] External UI Handling FilesInUse

This isn't technically a WiX question, but I figured there was no harm in 
asking:

I've written a bootstrapper for our various products, one that uses 
MsiSetExternalUI to hook into the MSIs to retrieve error messages, progress, 
and the like (I've based off the example handler found here: 
http://msdn.microsoft.com/en-us/library/aa368786%28VS.85%29.aspx).  I would 
also like to be able to deal with FilesInUse messages, but I'm unsure how to 
actually retrieve the information on which applications need to be closed (they 
don't show up in the message string that gets sent).  I've discovered that 
appending [1], [2], etc. the 1607 message (files in use), the message sent to 
the UI handler then receives the application names, but when uninstalling 
directly from Add/Remove Programs, the internal UI doesn't seem to do the 
string substitution and I end up with "The following applications should be 
closed before continuing the install: [1] [2]..." being displayed to the user.

So basically the short version of my question: Does anyone know a way to 
retrieve the list of applications for a 1607 (files in use) message in an 
external UI without screwing up what is displayed by the internal UI when run 
directly from the .msi?

I don't suppose anyone has run into this issue before and found an acceptable 
solution?

-Andy
------------------------------------------------------------------------------
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


*** Confidentiality Notice: This e-mail, including any associated or attached 
files, is intended solely for the individual or entity to which it is 
addressed. This e-mail is confidential and may well also be legally privileged. 
If you have received it in error, you are on notice of its status. Please 
notify the sender immediately by reply e-mail and then delete this message from 
your system. Please do not copy it or use it for any purposes, or disclose its 
contents to any other person. This email comes from a division of the Invensys 
Group, owned by Invensys plc, which is a company registered in England and 
Wales with its registered office at Portland House, Bressenden Place, London, 
SW1E 5BF (Registered number 166023). For a list of European legal entities 
within the Invensys Group, please go to 
http://www.invensys.com/legal/default.asp?top_nav_id=77&nav_id=80&prev_id=77. 
You may contact Invensys plc on +44 (0)20 7821 3848 or e-mail 
inet.hqhelpd...@invensys.com. This e-mail 
 and any attachments thereto may be subject to the terms of any agreements 
between Invensys (and/or its subsidiaries and affiliates) and the recipient 
(and/or its subsidiaries and affiliates).



------------------------------------------------------------------------------
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

------------------------------------------------------------------------------
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