Without knowing exactly why you think there are "problems with writing back properties to the MSI" I can't really comment too much. What requirement do you think this addresses? I have used an external UI a lot, your 2, and it works fine. Typically you want to show splash screens, a dialog to accept a EULA, then collect a list of features and other properties. Then you install one or more MSI files "silently" as a single transaction, getting progress and action messages from the callback and showing them in a progress-type of dialog, handling FilesInUse in your callback by showing a dialog etc. You set the feature list using ADDLOCAL on the command line when you install the MSI file(s), and any other properties you have collected in the UI. Your own silent install of the multiple MSI files means that you suppress all your UI, and collect things like a feature list and properties to be set from a response file that your program reads and passes to the MSI command line.
Phil Wilson -----Original Message----- From: Pratapa Reddy Sanaga [mailto:pratap.san...@gmail.com] Sent: Wednesday, September 15, 2010 5:48 PM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Can msi external ui write to the MSI properties? I'm just making sure I verify all possibilities to show a UI and capture my design decision in the doc... 1. UI in the bootstrapper exe itself - I'm currently thinking this is the most feasible solution. 2. UI as msi external UI - As we discussed, problems with writing back properties to the MSI. 3. UI in msi embedded UI - I need to compatible with Windows Installer 3.1, so this is not an option for me. 4. UI in UI Sequence - My UI should host a WebBrowser control, so the MSI dialogs are not an option for me. 5. UI in immediate custom action in InstallExecute sequence - This is probably another option available to me apart from option 1. The UI launches as logged in user, I'll be able to write back to the msi. But I'm not sure if I should be doing the UI work in this place because the custom action, eventhough running as logged in user, is running with Integrity Level High and Elevation Type Full(applicable on Vista+). Since the UI is going to navigate to a website, this is not secure. Once the process is elevated, there is no way to go back to non-elevated mode. 6. UI in deferred custom action - The new process that my UI launches is launching as LocalSystem and I'm not able to launch it as logged in user. So the security issue is pulling me back from going with this approach. So what you suggested above(collect data in your own UI and set the properties on command line) is my option 1. Please correct me if any of my above statements are wrong. Thanks, Pratap. On Wed, Sep 15, 2010 at 5:08 PM, Wilson, Phil <phil.wil...@invensys.com>wrote: > That's correct, it will have started, but if you're following a model where > you collect data in your own UI and start the install you have an > opportunity to set the properties on the install command line. I don't see > why you would try to set properties from your callback - it seems > non-deterministic to me. Also you can't really show a UI there and expect to > support a silent install. > > Phil Wilson > > > -----Original Message----- > From: Pratapa Reddy Sanaga [mailto:pratap.san...@gmail.com] > Sent: Wednesday, September 15, 2010 4:28 PM > To: General discussion for Windows Installer XML toolset. > Subject: Re: [WiX-users] Can msi external ui write to the MSI properties? > > The install would have already started if my external UI is being executed > right? i.e. the callback would occur only after I call the InstallProduct > API from my bootstrapper exe, so I don't have any more chance of passing in > a command line argument I guess. > > I'll try using the context to set the property and get back on this > thread.. > > Thanks! > On Wed, Sep 15, 2010 at 4:15 PM, Wilson, Phil <phil.wil...@invensys.com > >wrote: > > > If you haven't started the install yet, you could pass those properties > on > > the command line. Alternatively, the first parameter in the UIHandler > > callback ("context") is (can be cast to) the MSIHANDLE for the install. > The > > example callback in MSDN casts it to an MSIHANDLE when it calls > > MsiFormatRecord(). I've never tried an MsiSetProperty() on it though. > > > > > > Phil Wilson > > > > -----Original Message----- > > From: Pratapa Reddy Sanaga [mailto:pratap.san...@gmail.com] > > Sent: Wednesday, September 15, 2010 3:53 PM > > To: General discussion for Windows Installer XML toolset. > > Subject: [WiX-users] Can msi external ui write to the MSI properties? > > > > Hi, > > > > I'm trying to see if I can use msi external ui for my project. Will I be > > able to get an input from the user using msi external ui and then store > > that, lets say string, input from the user into one of the msi > properties? > > I > > feel it can't be done because the external ui would probably be running > in > > a > > separate process and it wouldn't have any handle to the currently running > > msi to set the property. Please assert my understanding. > > > > Thanks, > > Pratap. > > > > -- > > Vote for loksatta = vote for a better future > > > > > ------------------------------------------------------------------------------ > > Start uncovering the many advantages of virtual appliances > > and start using them to simplify application deployment and > > accelerate your shift to cloud computing. > > http://p.sf.net/sfu/novell-sfdev2dev > > _______________________________________________ > > 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 3rd > > Floor, 40 Grosvenor Place, London, SW1X 7AW (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 3155 1200 or e-mail > > recept...@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). > > > > > > > > > > > ------------------------------------------------------------------------------ > > Start uncovering the many advantages of virtual appliances > > and start using them to simplify application deployment and > > accelerate your shift to cloud computing. > > http://p.sf.net/sfu/novell-sfdev2dev > > _______________________________________________ > > WiX-users mailing list > > WiX-users@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/wix-users > > > > > > -- > Vote for loksatta = vote for a better future > > ------------------------------------------------------------------------------ > Start uncovering the many advantages of virtual appliances > and start using them to simplify application deployment and > accelerate your shift to cloud computing. > http://p.sf.net/sfu/novell-sfdev2dev > _______________________________________________ > 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 3rd > Floor, 40 Grosvenor Place, London, SW1X 7AW (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 3155 1200 or e-mail > recept...@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). > > > > > ------------------------------------------------------------------------------ > Start uncovering the many advantages of virtual appliances > and start using them to simplify application deployment and > accelerate your shift to cloud computing. > http://p.sf.net/sfu/novell-sfdev2dev > _______________________________________________ > WiX-users mailing list > WiX-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wix-users > -- Vote for loksatta = vote for a better future ------------------------------------------------------------------------------ Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev _______________________________________________ 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 3rd Floor, 40 Grosvenor Place, London, SW1X 7AW (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 3155 1200 or e-mail recept...@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). ------------------------------------------------------------------------------ Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users