Does anybody have sample code or pointers on how to pass parameters or arguments to MsiProductInstall() in bootstrapper?
On Fri, Mar 16, 2012 at 10:55 AM, Alec Swan <alecs...@gmail.com> wrote: > session.Log seems to work fine, thanks. However, I can only see these > messages in the log file if I pass /l*v parameter to msiexec. > > So, how do I write that bootstrapper that passes /l*v command line > parameter or an argument to MsiProductInstall() which enables logging? > > Thanks, > > Alec > > On Fri, Mar 16, 2012 at 8:41 AM, Hoover, Jacob > <jacob.hoo...@greenheck.com> wrote: >> For .Net CA's there is a Log method on the session object. As for C/C+ >> custom actions, the SDK provides a WcaLog(LOGMSG_STANDARD, "Message goes >> here.") method. >> >> Both of these will write to the Windows installer log, if it's enabled. >> >> -----Original Message----- >> From: Chad Petersen [mailto:chad.peter...@harlandfs.com] >> Sent: Thursday, March 15, 2012 5:42 PM >> To: General discussion for Windows Installer XML toolset. >> Subject: Re: [WiX-users] Setting MsiLogFileLocation property >> >> I use a second custom action called WriteToMSILog that I call at specific >> times from my first custom action to log to the normal log file that >> everything else writes to. Keeps everything in one log file and is easy to >> call as needed. >> >> The CDATA portion looks like this (Jscript example) >> >> <![CDATA[ >> try >> { >> var szMessage = Session.Property( >> "WriteToMSILog" ); >> var msiMessageTypeInfo = 0x04000000;// >> Informative message for log, not to be displayed. >> var sDelim = >> "************************************************************"; >> >> //Create a record with only one field >> var oRecord = Session.Installer.CreateRecord( >> 1 ); >> >> //Create the full message >> szFullMessage = sDelim + "\n" + szMessage; >> >> oRecord.StringData( 0 ) = "[1]"; >> oRecord.StringData( 1 ) = szFullMessage; >> >> Session.FormatRecord( oRecord ); >> Session.Message( msiMessageTypeInfo, oRecord >> ); >> >> oRecord = null; >> } >> catch(e) >> { >> } >> ]]> >> >> >> The call from my first custom action looks like this >> >> Session.Property("WriteToMSILog") = "Process Name: " + pProps[proc]; >> Session.DoAction("WriteToMSILog"); >> >> -----Original Message----- >> From: Alec Swan [mailto:alecs...@gmail.com] >> Sent: Thursday, March 15, 2012 3:20 PM >> To: General discussion for Windows Installer XML toolset. >> Subject: Re: [WiX-users] Setting MsiLogFileLocation property >> >> Wow, this is a pretty active mailing list. I think we have the >> definite answer now. >> >> As you can already tell I am a newbie to WIX, so please take it easy >> on me with my next question. What logging mechanism do you normally >> use to log messages from your custom actions? >> >> Thanks, >> >> Alec >> >> On Thu, Mar 15, 2012 at 12:58 PM, Castro, Edwin G. (Hillsboro) >> <edwin.cas...@fiserv.com> wrote: >>> In addition, the Windows Installer engine starts producing log messages >>> before it loads the MSI package to determine what log file to use. >>> >>> In short, one can set a log file: >>> * On the command line >>> * As an argument to MsiProductInstall() >>> * In the registry (global and applies to all MSI packages, cannot be >>> changed on a per package basis) >>> >>> The MsiLogFileLocation property is automatically set by the Windows >>> Installer engine to allow a MSI UI to display the log file location on a >>> dialog. Changing the value of MsiLogFileLocation within the MSI package >>> itself does not change where the Windows Installer engine is logging to (as >>> evidenced by the tests performed by various people). >>> >>> To automatically set a log file you'll need to use a bootstrapper as was >>> already suggested so that the bootstrapper can set it on the command line >>> or as an argument to MsiProductInstall(). >>> >>> Your system administrator could use the registry approach to control >>> whether all MSI packages generate a log file to a specific folder location >>> with a random: MSI*.LOG name. >>> >>> This is documented in the MSDN documentation so if anybody wants to use >>> this approach I suggest they check MSDN at >>> http://msdn.microsoft.com/en-us/library/windows/desktop/aa372847.aspx >>> >>> Edwin G. Castro >>> Software Developer - Staff >>> Digital Channels >>> Fiserv >>> Office: 503-746-0643 >>> Fax: 503-617-0291 >>> www.fiserv.com >>> Please consider the environment before printing this e-mail >>> >>> >>> >>>> -----Original Message----- >>>> From: Chad Petersen [mailto:chad.peter...@harlandfs.com] >>>> Sent: Thursday, March 15, 2012 11:22 AM >>>> To: General discussion for Windows Installer XML toolset. >>>> Subject: Re: [WiX-users] Setting MsiLogFileLocation property >>>> >>>> A good test anyone can try. Run a command something like this. >>>> >>>> MSIEXEC.EXE /L*v C:\Foobar\test.log /I <path to MSI> >>>> >>>> For that log folder that you point to make sure the C:\Foobar directly DOES >>>> NOT EXIST. >>>> >>>> Note how MSIEXEC.EXE will simply error out rather than creating the Foobar >>>> folder in which to create the log file. >>>> >>>> I feel this shows an example of what Edwin and others are talking about. >>>> Log >>>> file must be established before MSIEXEC calls into the MSI. >>>> >>>> -----Original Message----- >>>> From: Castro, Edwin G. (Hillsboro) [mailto:edwin.cas...@fiserv.com] >>>> Sent: Thursday, March 15, 2012 11:10 AM >>>> To: General discussion for Windows Installer XML toolset. >>>> Subject: Re: [WiX-users] Setting MsiLogFileLocation property >>>> >>>> WiX is not in control of the MsiLogFileLocation property. This is >>>> functionality >>>> provided by Windows Installer. >>>> >>>> As mentioned earlier, the log file location must be set before the MSI >>>> package is loaded by the Windows Installer engine. This is how Windows >>>> Installer works and the WiX team has no control over it. >>>> >>>> Please refer to http://msdn.microsoft.com/en- >>>> us/library/windows/desktop/aa372847.aspx for information on Windows >>>> Installer Logging. In particular check the Normal Logging section at >>>> http://msdn.microsoft.com/en-us/library/windows/desktop/aa370536.aspx >>>> for an explanation of your options. >>>> >>>> Edwin G. Castro >>>> Software Developer - Staff >>>> Digital Channels >>>> Fiserv >>>> Office: 503-746-0643 >>>> Fax: 503-617-0291 >>>> www.fiserv.com >>>> P Please consider the environment before printing this e-mail >>>> >>>> >>>> >>>> > -----Original Message----- >>>> > From: Alec Swan [mailto:alecs...@gmail.com] >>>> > Sent: Thursday, March 15, 2012 10:44 AM >>>> > To: General discussion for Windows Installer XML toolset. >>>> > Subject: Re: [WiX-users] Setting MsiLogFileLocation property >>>> > >>>> > Phil, thank you for sharing your experience. >>>> > >>>> > I would like to keep this thread active until we get a definite answer >>>> > from the WIX team. Whether it is "You can't enable MSI logging in the >>>> > current version of WIX but will be available in version x.x" or "This >>>> > is how you do this ..." - it will still be very helpful. >>>> > >>>> > Thanks, >>>> > >>>> > Alec >>>> > >>>> > On Thu, Mar 15, 2012 at 11:32 AM, Wilson, Phil >>>> > <phil.wil...@invensys.com> >>>> > wrote: >>>> > > You can't set MsiLogFileLocation, as the MSDN docs pretty much say. >>>> > > You >>>> > can try to set it but it's ineffective. If you set it in the property >>>> > table it just gets overwritten. If you set it with a type 51 it just >>>> > gets ignored. >>>> > > >>>> > > Phil W >>>> > > >>>> > > -----Original Message----- >>>> > > From: Alec Swan [mailto:alecs...@gmail.com] >>>> > > Sent: Thursday, March 15, 2012 10:09 AM >>>> > > To: General discussion for Windows Installer XML toolset. >>>> > > Subject: Re: [WiX-users] Setting MsiLogFileLocation property >>>> > > >>>> > > Adam, >>>> > > >>>> > > This post indicates that it is possible to set MSI property from WIX: >>>> > > http://blogs.technet.com/b/alexshev/archive/2009/05/16/from-msi-to- >>>> > wix >>>> > > -part-23-dll-custom-actions-logging-and-setting-properties.aspx >>>> > > >>>> > > If this is true, shouldn't I be able to use this approach to set >>>> > > some kind of MSI property to force logging and/or configure location >>>> > > of the log file? >>>> > > >>>> > > Enabling logging seems to be a pretty common question on the WIX >>>> > > forum, can we have WIX team to provide a recommendation on how to >>>> do >>>> > > this? >>>> > > >>>> > > Thanks, >>>> > > >>>> > > Alec >>>> > > >>>> > > On Thu, Mar 15, 2012 at 10:54 AM, Adam Kadzban >>>> > > <mightyshorta...@gmail.com> wrote: >>>> > >> Alec, >>>> > >> >>>> > >> As far as I know, you can't set the log file location inside WIX >>>> > >> because you need to tell msiexec where to write the log file to >>>> > >> before actually starting the MSI. You need some sort of >>>> > >> bootstrapper that calls msiexec with the logging options. I've used >>>> > >> IExpress in the past, but I think I'll be switching to >>>> > >> dotNetInstaller soon. >>>> > >> >>>> > >> -Adam >>>> > >> >>>> > >> On Thu, Mar 15, 2012 at 11:43 AM, John Cooper >>>> > <jocoo...@jackhenry.com>wrote: >>>> > >> >>>> > >>> I've seen the same bugs CP has seen. I've got it set in my >>>> > >>> installers, but only because CD demands it. Setting it causes a >>>> > >>> fair number of install failures, particular in >>>> > >>> install/repair/uninstall cycles. >>>> > >>> >>>> > >>> -- >>>> > >>> John Merryweather Cooper >>>> > >>> Build & Install Engineer - ESA >>>> > >>> Jack Henry & Associates, Inc.® >>>> > >>> Shawnee Mission, KS 66227 >>>> > >>> Office: 913-341-3434 x791011 >>>> > >>> jocoo...@jackhenry.com >>>> > >>> www.jackhenry.com >>>> > >>> >>>> > >>> >>>> > >>> >>>> > >>> >>>> > >>> -----Original Message----- >>>> > >>> From: Alec Swan [mailto:alecs...@gmail.com] >>>> > >>> Sent: Thursday, March 15, 2012 11:30 AM >>>> > >>> To: General discussion for Windows Installer XML toolset. >>>> > >>> Subject: Re: [WiX-users] Setting MsiLogFileLocation property >>>> > >>> >>>> > >>> The following thread implied that the file log location can be set >>>> > >>> through MsiLogFileLocation property in WIX: >>>> > >>> >>>> > >>> http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Msi- >>>> > >>> Lo >>>> > >>> gging-td707004.html#a707011 >>>> > >>> >>>> > >>> But it sounds like Rob is saying this is not possible. >>>> > >>> >>>> > >>> So, how can I reliably enable MSI logging programmatically in WIX >>>> > >>> code and ideally set the location of the log file? We need to >>>> > >>> support Windows XP SP2 and higher. >>>> > >>> >>>> > >>> Thanks, >>>> > >>> >>>> > >>> Alec >>>> > >>> >>>> > >>> On Thu, Mar 15, 2012 at 10:05 AM, Christopher Painter >>>> > >>> <chr...@iswix.com> >>>> > >>> wrote: >>>> > >>> > I don't know if this is common knowledge but I don't set the >>>> > >>> > MsiLogging property anymore. There' s a known bug in Windows 7 >>>> > >>> > where Explorer / Shell can lose reference to the installer log >>>> > >>> > file location and it causes the installer to crash out. It >>>> > >>> > can manifest itself on uninstall which means you are stuck >>>> > >>> > unless you run the uninstall from the command line passing in an >>>> explicit path. >>>> > >>> > >>>> > >>> > ---------------------------------------- >>>> > >>> > >>>> > >>> > From: "Rob Mensching" <r...@robmensching.com> >>>> > >>> > >>>> > >>> > Sent: Thursday, March 15, 2012 11:02 AM >>>> > >>> > >>>> > >>> > To: "General discussion for Windows Installer XML toolset." >>>> > >>> > <wix-users@lists.sourceforge.net> >>>> > >>> > >>>> > >>> > Subject: Re: [WiX-users] Setting MsiLogFileLocation property >>>> > >>> > >>>> > >>> > >>>> > >>> > I don't think you can set the log file using MsiLogFileLocation. >>>> > >>> > I think it >>>> > >>> > >>>> > >>> > *gets* set to the log file location. You can force your package >>>> > >>> > to require >>>> > >>> > >>>> > >>> > MSI 4.0 by setting the Package/InstallerVersion attribute. >>>> > >>> > >>>> > >>> > >>>> > >>> > On Wed, Mar 14, 2012 at 9:10 PM, Alec Swan <alecs...@gmail.com> >>>> > wrote: >>>> > >>> > >>>> > >>> > >>>> > >>> >> Hello, >>>> > >>> > >>>> > >>> >> >>>> > >>> > >>>> > >>> >> I need to enable verbose logging and configure MSI log file >>>> > >>> >> location. >>>> > >>> > >>>> > >>> >> I am currently doing this by adding the following properties >>>> > >>> >> inside of >>>> > >>> > >>>> > >>> >> my .wxs file: >>>> > >>> > >>>> > >>> >> <Wix> >>>> > >>> > >>>> > >>> >> <Product> >>>> > >>> > >>>> > >>> >> <Property Id="LOGVERBOSE">1</Property> >>>> > >>> > >>>> > >>> >> <Property Id="MsiLogFileLocation">x:/WIX/wix-msi.log</Property> >>>> > >>> > >>>> > >>> >> ... >>>> > >>> > >>>> > >>> >> >>>> > >>> > >>>> > >>> >> Is this the right place for these properties? >>>> > >>> > >>>> > >>> >> >>>> > >>> > >>>> > >>> >> If so, then I am assuming that the reason why they are not >>>> > >>> >> taking >>>> > >>> > >>>> > >>> >> effect is that the MSI version our Wix project is using is >>>> > >>> >> lower than >>>> > >>> > >>>> > >>> >> 4.0 and does not support MsiLogFileLocation property. Where do >>>> > >>> >> I >>>> > >>> > >>>> > >>> >> update the MSI version in my WIX project? >>>> > >>> > >>>> > >>> >> >>>> > >>> > >>>> > >>> >> Thanks, >>>> > >>> > >>>> > >>> >> >>>> > >>> > >>>> > >>> >> Alec >>>> > >>> > >>>> > >>> >> >>>> > >>> > >>>> > >>> >> >>>> > >>> > >>>> > >>> >> >>>> > >>> > ---------------------------------------------------------------- >>>> > >>> > -- >>>> > >>> > ---- >>>> > >>> > ------ >>>> > >>> > -- >>>> > >>> > >>>> > >>> >> This SF email is sponsosred by: >>>> > >>> > >>>> > >>> >> Try Windows Azure free for 90 days Click Here >>>> > >>> > >>>> > >>> >> http://p.sf.net/sfu/sfd2d-msazure >>>> > >>> > >>>> > >>> >> _______________________________________________ >>>> > >>> > >>>> > >>> >> WiX-users mailing list >>>> > >>> > >>>> > >>> >> WiX-users@lists.sourceforge.net >>>> > >>> > >>>> > >>> >> https://lists.sourceforge.net/lists/listinfo/wix-users >>>> > >>> > >>>> > >>> >> >>>> > >>> > >>>> > >>> > >>>> > >>> > -- >>>> > >>> > >>>> > >>> > virtually, Rob Mensching - http://RobMensching.com LLC >>>> > >>> > >>>> > >>> > ---------------------------------------------------------------- >>>> > >>> > -- >>>> > >>> > ---- >>>> > >>> > ------ >>>> > >>> > -- >>>> > >>> > >>>> > >>> > This SF email is sponsosred by: >>>> > >>> > >>>> > >>> > Try Windows Azure free for 90 days Click Here >>>> > >>> > >>>> > >>> > http://p.sf.net/sfu/sfd2d-msazure >>>> > >>> > >>>> > >>> > _______________________________________________ >>>> > >>> > >>>> > >>> > WiX-users mailing list >>>> > >>> > >>>> > >>> > WiX-users@lists.sourceforge.net >>>> > >>> > >>>> > >>> > https://lists.sourceforge.net/lists/listinfo/wix-users >>>> > >>> > >>>> > >>> > >>>> > >>> > ---------------------------------------------------------------- >>>> > >>> > -- >>>> > >>> > ---- >>>> > >>> > -------- >>>> > >>> > This SF email is sponsosred by: >>>> > >>> > Try Windows Azure free for 90 days Click Here >>>> > >>> > http://p.sf.net/sfu/sfd2d-msazure >>>> > >>> > _______________________________________________ >>>> > >>> > WiX-users mailing list >>>> > >>> > WiX-users@lists.sourceforge.net >>>> > >>> > https://lists.sourceforge.net/lists/listinfo/wix-users >>>> > >>> >>>> > >>> >>>> > >>> ------------------------------------------------------------------ >>>> > >>> -- >>>> > >>> ---------- >>>> > >>> This SF email is sponsosred by: >>>> > >>> Try Windows Azure free for 90 days Click Here >>>> > >>> http://p.sf.net/sfu/sfd2d- >>>> > msazure___________________________________ >>>> > >>> ____________ >>>> > >>> WiX-users mailing list >>>> > >>> WiX-users@lists.sourceforge.net >>>> > >>> https://lists.sourceforge.net/lists/listinfo/wix-users >>>> > >>> NOTICE: This electronic mail message and any files transmitted >>>> > >>> with it are intended exclusively for the individual or entity to >>>> > >>> which it is addressed. The message, together with any attachment, >>>> > >>> may contain confidential and/or privileged information. >>>> > >>> Any unauthorized review, use, printing, saving, copying, >>>> > >>> disclosure or distribution is strictly prohibited. If you have >>>> > >>> received this message in error, please immediately advise the >>>> > >>> sender by reply email and delete all copies. >>>> > >>> >>>> > >>> >>>> > >>> >>>> > >>> ------------------------------------------------------------------ >>>> > >>> -- >>>> > >>> ---------- >>>> > >>> This SF email is sponsosred by: >>>> > >>> Try Windows Azure free for 90 days Click Here >>>> > >>> http://p.sf.net/sfu/sfd2d-msazure >>>> > >>> _______________________________________________ >>>> > >>> WiX-users mailing list >>>> > >>> WiX-users@lists.sourceforge.net >>>> > >>> https://lists.sourceforge.net/lists/listinfo/wix-users >>>> > >>> >>>> > >> ------------------------------------------------------------------- >>>> > >> -- >>>> > >> --------- >>>> > >> This SF email is sponsosred by: >>>> > >> Try Windows Azure free for 90 days Click Here >>>> > >> http://p.sf.net/sfu/sfd2d-msazure >>>> > >> _______________________________________________ >>>> > >> WiX-users mailing list >>>> > >> WiX-users@lists.sourceforge.net >>>> > >> https://lists.sourceforge.net/lists/listinfo/wix-users >>>> > > >>>> > > -------------------------------------------------------------------- >>>> > > -- >>>> > > -------- >>>> > > This SF email is sponsosred by: >>>> > > Try Windows Azure free for 90 days Click Here >>>> > > http://p.sf.net/sfu/sfd2d-msazure >>>> > > _______________________________________________ >>>> > > 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/en/legal/default.aspx. >>>> > > >>>> > > 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). >>>> > > >>>> > > >>>> > > >>>> > > -------------------------------------------------------------------- >>>> > > -- >>>> > > -------- >>>> > > This SF email is sponsosred by: >>>> > > Try Windows Azure free for 90 days Click Here >>>> > > http://p.sf.net/sfu/sfd2d-msazure >>>> > > _______________________________________________ >>>> > > WiX-users mailing list >>>> > > WiX-users@lists.sourceforge.net >>>> > > https://lists.sourceforge.net/lists/listinfo/wix-users >>>> > >>>> > ---------------------------------------------------------------------- >>>> > -------- >>>> > This SF email is sponsosred by: >>>> > Try Windows Azure free for 90 days Click Here >>>> > http://p.sf.net/sfu/sfd2d- msazure >>>> > _______________________________________________ >>>> > WiX-users mailing list >>>> > WiX-users@lists.sourceforge.net >>>> > https://lists.sourceforge.net/lists/listinfo/wix-users >>>> ------------------------------------------------------------------------------ >>>> This SF email is sponsosred by: >>>> Try Windows Azure free for 90 days Click Here http://p.sf.net/sfu/sfd2d- >>>> msazure _______________________________________________ >>>> WiX-users mailing list >>>> WiX-users@lists.sourceforge.net >>>> https://lists.sourceforge.net/lists/listinfo/wix-users >>>> ------------------------------------------------------------------------------ >>>> This SF email is sponsosred by: >>>> Try Windows Azure free for 90 days Click Here http://p.sf.net/sfu/sfd2d- >>>> msazure _______________________________________________ >>>> WiX-users mailing list >>>> WiX-users@lists.sourceforge.net >>>> https://lists.sourceforge.net/lists/listinfo/wix-users >>> ------------------------------------------------------------------------------ >>> This SF email is sponsosred by: >>> Try Windows Azure free for 90 days Click Here >>> http://p.sf.net/sfu/sfd2d-msazure >>> _______________________________________________ >>> WiX-users mailing list >>> WiX-users@lists.sourceforge.net >>> https://lists.sourceforge.net/lists/listinfo/wix-users >> >> ------------------------------------------------------------------------------ >> This SF email is sponsosred by: >> Try Windows Azure free for 90 days Click Here >> http://p.sf.net/sfu/sfd2d-msazure >> _______________________________________________ >> WiX-users mailing list >> WiX-users@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/wix-users >> ------------------------------------------------------------------------------ >> This SF email is sponsosred by: >> Try Windows Azure free for 90 days Click Here >> http://p.sf.net/sfu/sfd2d-msazure >> _______________________________________________ >> WiX-users mailing list >> WiX-users@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/wix-users >> ------------------------------------------------------------------------------ >> This SF email is sponsosred by: >> Try Windows Azure free for 90 days Click Here >> http://p.sf.net/sfu/sfd2d-msazure >> _______________________________________________ >> WiX-users mailing list >> WiX-users@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ This SF email is sponsosred by: Try Windows Azure free for 90 days Click Here http://p.sf.net/sfu/sfd2d-msazure _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users