Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

2014-09-09 Thread Namrata Kumari
Could you please share the complete code. 



--
View this message in context: 
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/dual-purpose-installer-ALLUSERS-2-and-Bootstrapper-tp7591740p7596724.html
Sent from the wix-users mailing list archive at Nabble.com.

--
Want excitement?
Manually upgrade your production database.
When you want reliability, choose Perforce.
Perforce version control. Predictably reliable.
http://pubads.g.doubleclick.net/gampad/clk?id=157508191iu=/4140/ostg.clktrk
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

2014-01-28 Thread Blair Murri
If your MSI package is always per-user, why wouldn’t you just retrieve and use 
the path of FOLDERID_UserProgramFiles instead of ProgramFilesFolder?






Blair





From: Sascha Sertel
Sent: ‎Monday‎, ‎January‎ ‎27‎, ‎2014 ‎10‎:‎58‎ ‎AM
To: General discussion for Windows Installer XML toolset.





With MSIINSTALLPERUSER=1 on Windows 7 and above the ProgramFilesFolder
location gets automatically rerouted to LocalAppDataFolder if running a
per-User install.

This MSDN article shows where all the folder locations point to in
per-machine vs. per-user installs:
http://msdn.microsoft.com/en-us/library/windows/desktop/dd765197(v=vs.85).aspx

// Sascha



On Mon, Jan 27, 2014 at 8:46 AM, Rob Mensching r...@robmensching.com wrote:

 No. That's a per-machine location.

 -Original Message-
 From: Wesley Manning [mailto:wmann...@dynagen.ca]
 Sent: Monday, January 27, 2014 7:54 AM
 To: General discussion about the WiX toolset.
 Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and
 Bootstrapper

 So per users can installer to C:\Program Files\ ?

 -Original Message-
 From: Sascha Sertel [mailto:sascha.ser...@gmail.com]
 Sent: January-24-14 6:45 PM
 To: General discussion about the WiX toolset.
 Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and
 Bootstrapper

 No I did not set ALLUSERS directly.


 On Fri, Jan 24, 2014 at 2:32 PM, Rob Mensching r...@robmensching.com
 wrote:

  Did you have ALLUSERS set the whole time as well?
 
  -Original Message-
  From: Sascha Sertel [mailto:sascha.ser...@gmail.com]
  Sent: Friday, January 24, 2014 2:21 PM
  To: General discussion about the WiX toolset.
  Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and
  Bootstrapper
 
  I always had Package/@InstallScope='perUser', that never changed.
 
  But the key thing for me to get it to work was MSIINSTALLPERUSER=1,
  without it I kept getting the insufficient privileges error both in
  the bundle and when running the stand-alone MSI.
 
  // Sascha
 
 
 
  On Fri, Jan 24, 2014 at 1:34 PM, Rob Mensching r...@robmensching.com
  wrote:
 
   Burn does lots of work to make this scenario work (per-machine
   prerequisites and one or more per-user packages). It's unique among
   bootstrappers because it does it in all the right user contexts and
   all that. I saw a follow up email from you on a fork of this thread
   that found the most important thing: You need to make sure your
   per-user package is truly per-user.  The easiest way to do that is
   to
  use:
   Package/@InstallScope='perUser'.
  
   -Original Message-
   From: Sascha Sertel [mailto:sascha.ser...@gmail.com]
   Sent: Friday, January 24, 2014 12:18 PM
   To: General discussion about the WiX toolset.
   Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and
   Bootstrapper
  
   Let me clarify a bit to tell you what I'm trying to do, what I've
   tried, and what I thought isn't currently working:
  
   Goal: Build a WiX installer for my software which installs .NET
   Framework
   4.5.1 if needed, C++ Runtime if needed, and my software. My software
   needs to be installed per-user, i.e. it should go into
   AppData\Local, not Program Files.
  
   My understanding is
   - To accomplish my goal I need three components: .NET Framework
   4.5.1 package (provided by NetFx extension), C++ Runtime merge
   module, and MSI for my software
   - The two prerequisites needs to be installed on a per-machine
   (elevated) level, my software on a per-user level
  
   This is what I've tried:
   Attempt 1. Created a WiX bundle with two packages inside the Chain
  element:
   A PackageGroupRef for NetFx451Web, and an MsiPackage that includes
   my software as well as the C++ merge module.
   Problem: This wouldn't build because my software Package had
   InstallScope perUser but apparently the C++ merge module forced
   ALLUSERS=1 which conflicted with the perUser setting. This problem
   went away when I took the merge module out of the package.
  
   Attempt 2: Created a WiX bundle with three packages inside the Chain
   element: A PackageGroupRef for NetFx451Web, an MsiPackage for my C++
   Runtime merge module (InstallScope perMachine), and an MsiPackage
   for my software (InstallScope perUser).
   Problem: When running the resulting bundle it would prompt for
   elevation (which is fine), then install .NET Framework fine, then
   install the merge module fine, but throw an error for my perUser
   package: The installer has insufficient privileges to access this
   directory: C:\Program Files\product. The installation cannot
   continue. Log on as administrator or contact your system
 administrator.
  
   My software package uses a folder underneath ProgramFilesFolder as
   the target folder and I was expecting that on Win7 and up in a
   per-user install it automatically translates to LocalAppDataFolder
 instead.
  
   I thought from what I had gathered in this thread is that once the
   bundle gets

Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

2014-01-28 Thread Wesley Manning
I'm not writing a per user package.  I was just curious.  

-Original Message-
From: Blair Murri [mailto:os...@live.com] 
Sent: January-28-14 6:05 AM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

If your MSI package is always per-user, why wouldn’t you just retrieve and use 
the path of FOLDERID_UserProgramFiles instead of ProgramFilesFolder?






Blair





From: Sascha Sertel
Sent: ‎Monday‎, ‎January‎ ‎27‎, ‎2014 ‎10‎:‎58‎ ‎AM
To: General discussion for Windows Installer XML toolset.





With MSIINSTALLPERUSER=1 on Windows 7 and above the ProgramFilesFolder location 
gets automatically rerouted to LocalAppDataFolder if running a per-User install.

This MSDN article shows where all the folder locations point to in per-machine 
vs. per-user installs:
http://msdn.microsoft.com/en-us/library/windows/desktop/dd765197(v=vs.85).aspx

// Sascha



On Mon, Jan 27, 2014 at 8:46 AM, Rob Mensching r...@robmensching.com wrote:

 No. That's a per-machine location.

 -Original Message-
 From: Wesley Manning [mailto:wmann...@dynagen.ca]
 Sent: Monday, January 27, 2014 7:54 AM
 To: General discussion about the WiX toolset.
 Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and 
 Bootstrapper

 So per users can installer to C:\Program Files\ ?

 -Original Message-
 From: Sascha Sertel [mailto:sascha.ser...@gmail.com]
 Sent: January-24-14 6:45 PM
 To: General discussion about the WiX toolset.
 Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and 
 Bootstrapper

 No I did not set ALLUSERS directly.


 On Fri, Jan 24, 2014 at 2:32 PM, Rob Mensching r...@robmensching.com
 wrote:

  Did you have ALLUSERS set the whole time as well?
 
  -Original Message-
  From: Sascha Sertel [mailto:sascha.ser...@gmail.com]
  Sent: Friday, January 24, 2014 2:21 PM
  To: General discussion about the WiX toolset.
  Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and 
  Bootstrapper
 
  I always had Package/@InstallScope='perUser', that never changed.
 
  But the key thing for me to get it to work was MSIINSTALLPERUSER=1, 
  without it I kept getting the insufficient privileges error both in 
  the bundle and when running the stand-alone MSI.
 
  // Sascha
 
 
 
  On Fri, Jan 24, 2014 at 1:34 PM, Rob Mensching 
  r...@robmensching.com
  wrote:
 
   Burn does lots of work to make this scenario work (per-machine 
   prerequisites and one or more per-user packages). It's unique 
   among bootstrappers because it does it in all the right user 
   contexts and all that. I saw a follow up email from you on a fork 
   of this thread that found the most important thing: You need to 
   make sure your per-user package is truly per-user.  The easiest 
   way to do that is to
  use:
   Package/@InstallScope='perUser'.
  
   -Original Message-
   From: Sascha Sertel [mailto:sascha.ser...@gmail.com]
   Sent: Friday, January 24, 2014 12:18 PM
   To: General discussion about the WiX toolset.
   Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and 
   Bootstrapper
  
   Let me clarify a bit to tell you what I'm trying to do, what I've 
   tried, and what I thought isn't currently working:
  
   Goal: Build a WiX installer for my software which installs .NET 
   Framework
   4.5.1 if needed, C++ Runtime if needed, and my software. My 
   software needs to be installed per-user, i.e. it should go into 
   AppData\Local, not Program Files.
  
   My understanding is
   - To accomplish my goal I need three components: .NET Framework
   4.5.1 package (provided by NetFx extension), C++ Runtime merge 
   module, and MSI for my software
   - The two prerequisites needs to be installed on a per-machine
   (elevated) level, my software on a per-user level
  
   This is what I've tried:
   Attempt 1. Created a WiX bundle with two packages inside the Chain
  element:
   A PackageGroupRef for NetFx451Web, and an MsiPackage that includes 
   my software as well as the C++ merge module.
   Problem: This wouldn't build because my software Package had 
   InstallScope perUser but apparently the C++ merge module forced 
   ALLUSERS=1 which conflicted with the perUser setting. This 
   problem went away when I took the merge module out of the package.
  
   Attempt 2: Created a WiX bundle with three packages inside the 
   Chain
   element: A PackageGroupRef for NetFx451Web, an MsiPackage for my 
   C++ Runtime merge module (InstallScope perMachine), and an 
   MsiPackage for my software (InstallScope perUser).
   Problem: When running the resulting bundle it would prompt for 
   elevation (which is fine), then install .NET Framework fine, then 
   install the merge module fine, but throw an error for my perUser
   package: The installer has insufficient privileges to access this
   directory: C:\Program Files\product. The installation cannot 
   continue. Log on as administrator or contact your system

Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

2014-01-27 Thread Wesley Manning
So per users can installer to C:\Program Files\ ?  

-Original Message-
From: Sascha Sertel [mailto:sascha.ser...@gmail.com] 
Sent: January-24-14 6:45 PM
To: General discussion about the WiX toolset.
Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

No I did not set ALLUSERS directly.


On Fri, Jan 24, 2014 at 2:32 PM, Rob Mensching r...@robmensching.com wrote:

 Did you have ALLUSERS set the whole time as well?

 -Original Message-
 From: Sascha Sertel [mailto:sascha.ser...@gmail.com]
 Sent: Friday, January 24, 2014 2:21 PM
 To: General discussion about the WiX toolset.
 Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and 
 Bootstrapper

 I always had Package/@InstallScope='perUser', that never changed.

 But the key thing for me to get it to work was MSIINSTALLPERUSER=1, 
 without it I kept getting the insufficient privileges error both in 
 the bundle and when running the stand-alone MSI.

 // Sascha



 On Fri, Jan 24, 2014 at 1:34 PM, Rob Mensching r...@robmensching.com
 wrote:

  Burn does lots of work to make this scenario work (per-machine 
  prerequisites and one or more per-user packages). It's unique among 
  bootstrappers because it does it in all the right user contexts and 
  all that. I saw a follow up email from you on a fork of this thread 
  that found the most important thing: You need to make sure your 
  per-user package is truly per-user.  The easiest way to do that is 
  to
 use:
  Package/@InstallScope='perUser'.
 
  -Original Message-
  From: Sascha Sertel [mailto:sascha.ser...@gmail.com]
  Sent: Friday, January 24, 2014 12:18 PM
  To: General discussion about the WiX toolset.
  Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and 
  Bootstrapper
 
  Let me clarify a bit to tell you what I'm trying to do, what I've 
  tried, and what I thought isn't currently working:
 
  Goal: Build a WiX installer for my software which installs .NET 
  Framework
  4.5.1 if needed, C++ Runtime if needed, and my software. My software 
  needs to be installed per-user, i.e. it should go into 
  AppData\Local, not Program Files.
 
  My understanding is
  - To accomplish my goal I need three components: .NET Framework 
  4.5.1 package (provided by NetFx extension), C++ Runtime merge 
  module, and MSI for my software
  - The two prerequisites needs to be installed on a per-machine
  (elevated) level, my software on a per-user level
 
  This is what I've tried:
  Attempt 1. Created a WiX bundle with two packages inside the Chain
 element:
  A PackageGroupRef for NetFx451Web, and an MsiPackage that includes 
  my software as well as the C++ merge module.
  Problem: This wouldn't build because my software Package had 
  InstallScope perUser but apparently the C++ merge module forced 
  ALLUSERS=1 which conflicted with the perUser setting. This problem 
  went away when I took the merge module out of the package.
 
  Attempt 2: Created a WiX bundle with three packages inside the Chain
  element: A PackageGroupRef for NetFx451Web, an MsiPackage for my C++ 
  Runtime merge module (InstallScope perMachine), and an MsiPackage 
  for my software (InstallScope perUser).
  Problem: When running the resulting bundle it would prompt for 
  elevation (which is fine), then install .NET Framework fine, then 
  install the merge module fine, but throw an error for my perUser
  package: The installer has insufficient privileges to access this
  directory: C:\Program Files\product. The installation cannot 
  continue. Log on as administrator or contact your system administrator.
 
  My software package uses a folder underneath ProgramFilesFolder as 
  the target folder and I was expecting that on Win7 and up in a 
  per-user install it automatically translates to LocalAppDataFolder instead.
 
  I thought from what I had gathered in this thread is that once the 
  bundle gets elevated permissions it will also try to run my software 
  package in forced per machine mode but without elevation, and 
  therefore fails when trying to access the Program Files directory.
 
  Your last remark sounds though as if this should work. Please help 
  me understand what I'm doing wrong.
 
  // Sascha
 
 
 
  On Fri, Jan 24, 2014 at 11:14 AM, Rob Mensching 
  r...@robmensching.com
  wrote:
 
   If you package is per-user then Burn handles that correctly. It 
   will elevate only if necessary (i.e installing per-machine 
   prerequisites) and install your per-user package.  Burn is 
   *designed* to handle that
  correctly.
  
   -Original Message-
   From: Sascha [mailto:sascha.ser...@gmail.com]
   Sent: Friday, January 24, 2014 10:51 AM
   To: wix-users@lists.sourceforge.net
   Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and 
   Bootstrapper
  
   I just ran into this exact same issue and have been trying to find 
   a suitable solution. I need to install the .NET Framework and also 
   a newer
   C++ runtime as per-machine

Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

2014-01-27 Thread Rob Mensching
No. That's a per-machine location.

-Original Message-
From: Wesley Manning [mailto:wmann...@dynagen.ca] 
Sent: Monday, January 27, 2014 7:54 AM
To: General discussion about the WiX toolset.
Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

So per users can installer to C:\Program Files\ ?  

-Original Message-
From: Sascha Sertel [mailto:sascha.ser...@gmail.com]
Sent: January-24-14 6:45 PM
To: General discussion about the WiX toolset.
Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

No I did not set ALLUSERS directly.


On Fri, Jan 24, 2014 at 2:32 PM, Rob Mensching r...@robmensching.com wrote:

 Did you have ALLUSERS set the whole time as well?

 -Original Message-
 From: Sascha Sertel [mailto:sascha.ser...@gmail.com]
 Sent: Friday, January 24, 2014 2:21 PM
 To: General discussion about the WiX toolset.
 Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and 
 Bootstrapper

 I always had Package/@InstallScope='perUser', that never changed.

 But the key thing for me to get it to work was MSIINSTALLPERUSER=1, 
 without it I kept getting the insufficient privileges error both in 
 the bundle and when running the stand-alone MSI.

 // Sascha



 On Fri, Jan 24, 2014 at 1:34 PM, Rob Mensching r...@robmensching.com
 wrote:

  Burn does lots of work to make this scenario work (per-machine 
  prerequisites and one or more per-user packages). It's unique among 
  bootstrappers because it does it in all the right user contexts and 
  all that. I saw a follow up email from you on a fork of this thread 
  that found the most important thing: You need to make sure your 
  per-user package is truly per-user.  The easiest way to do that is 
  to
 use:
  Package/@InstallScope='perUser'.
 
  -Original Message-
  From: Sascha Sertel [mailto:sascha.ser...@gmail.com]
  Sent: Friday, January 24, 2014 12:18 PM
  To: General discussion about the WiX toolset.
  Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and 
  Bootstrapper
 
  Let me clarify a bit to tell you what I'm trying to do, what I've 
  tried, and what I thought isn't currently working:
 
  Goal: Build a WiX installer for my software which installs .NET 
  Framework
  4.5.1 if needed, C++ Runtime if needed, and my software. My software 
  needs to be installed per-user, i.e. it should go into 
  AppData\Local, not Program Files.
 
  My understanding is
  - To accomplish my goal I need three components: .NET Framework
  4.5.1 package (provided by NetFx extension), C++ Runtime merge 
  module, and MSI for my software
  - The two prerequisites needs to be installed on a per-machine
  (elevated) level, my software on a per-user level
 
  This is what I've tried:
  Attempt 1. Created a WiX bundle with two packages inside the Chain
 element:
  A PackageGroupRef for NetFx451Web, and an MsiPackage that includes 
  my software as well as the C++ merge module.
  Problem: This wouldn't build because my software Package had 
  InstallScope perUser but apparently the C++ merge module forced 
  ALLUSERS=1 which conflicted with the perUser setting. This problem 
  went away when I took the merge module out of the package.
 
  Attempt 2: Created a WiX bundle with three packages inside the Chain
  element: A PackageGroupRef for NetFx451Web, an MsiPackage for my C++ 
  Runtime merge module (InstallScope perMachine), and an MsiPackage 
  for my software (InstallScope perUser).
  Problem: When running the resulting bundle it would prompt for 
  elevation (which is fine), then install .NET Framework fine, then 
  install the merge module fine, but throw an error for my perUser
  package: The installer has insufficient privileges to access this
  directory: C:\Program Files\product. The installation cannot 
  continue. Log on as administrator or contact your system administrator.
 
  My software package uses a folder underneath ProgramFilesFolder as 
  the target folder and I was expecting that on Win7 and up in a 
  per-user install it automatically translates to LocalAppDataFolder instead.
 
  I thought from what I had gathered in this thread is that once the 
  bundle gets elevated permissions it will also try to run my software 
  package in forced per machine mode but without elevation, and 
  therefore fails when trying to access the Program Files directory.
 
  Your last remark sounds though as if this should work. Please help 
  me understand what I'm doing wrong.
 
  // Sascha
 
 
 
  On Fri, Jan 24, 2014 at 11:14 AM, Rob Mensching 
  r...@robmensching.com
  wrote:
 
   If you package is per-user then Burn handles that correctly. It 
   will elevate only if necessary (i.e installing per-machine
   prerequisites) and install your per-user package.  Burn is
   *designed* to handle that
  correctly.
  
   -Original Message-
   From: Sascha [mailto:sascha.ser...@gmail.com]
   Sent: Friday, January 24, 2014 10:51 AM
   To: wix-users@lists.sourceforge.net

Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

2014-01-27 Thread Sascha Sertel
With MSIINSTALLPERUSER=1 on Windows 7 and above the ProgramFilesFolder
location gets automatically rerouted to LocalAppDataFolder if running a
per-User install.

This MSDN article shows where all the folder locations point to in
per-machine vs. per-user installs:
http://msdn.microsoft.com/en-us/library/windows/desktop/dd765197(v=vs.85).aspx

// Sascha



On Mon, Jan 27, 2014 at 8:46 AM, Rob Mensching r...@robmensching.com wrote:

 No. That's a per-machine location.

 -Original Message-
 From: Wesley Manning [mailto:wmann...@dynagen.ca]
 Sent: Monday, January 27, 2014 7:54 AM
 To: General discussion about the WiX toolset.
 Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and
 Bootstrapper

 So per users can installer to C:\Program Files\ ?

 -Original Message-
 From: Sascha Sertel [mailto:sascha.ser...@gmail.com]
 Sent: January-24-14 6:45 PM
 To: General discussion about the WiX toolset.
 Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and
 Bootstrapper

 No I did not set ALLUSERS directly.


 On Fri, Jan 24, 2014 at 2:32 PM, Rob Mensching r...@robmensching.com
 wrote:

  Did you have ALLUSERS set the whole time as well?
 
  -Original Message-
  From: Sascha Sertel [mailto:sascha.ser...@gmail.com]
  Sent: Friday, January 24, 2014 2:21 PM
  To: General discussion about the WiX toolset.
  Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and
  Bootstrapper
 
  I always had Package/@InstallScope='perUser', that never changed.
 
  But the key thing for me to get it to work was MSIINSTALLPERUSER=1,
  without it I kept getting the insufficient privileges error both in
  the bundle and when running the stand-alone MSI.
 
  // Sascha
 
 
 
  On Fri, Jan 24, 2014 at 1:34 PM, Rob Mensching r...@robmensching.com
  wrote:
 
   Burn does lots of work to make this scenario work (per-machine
   prerequisites and one or more per-user packages). It's unique among
   bootstrappers because it does it in all the right user contexts and
   all that. I saw a follow up email from you on a fork of this thread
   that found the most important thing: You need to make sure your
   per-user package is truly per-user.  The easiest way to do that is
   to
  use:
   Package/@InstallScope='perUser'.
  
   -Original Message-
   From: Sascha Sertel [mailto:sascha.ser...@gmail.com]
   Sent: Friday, January 24, 2014 12:18 PM
   To: General discussion about the WiX toolset.
   Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and
   Bootstrapper
  
   Let me clarify a bit to tell you what I'm trying to do, what I've
   tried, and what I thought isn't currently working:
  
   Goal: Build a WiX installer for my software which installs .NET
   Framework
   4.5.1 if needed, C++ Runtime if needed, and my software. My software
   needs to be installed per-user, i.e. it should go into
   AppData\Local, not Program Files.
  
   My understanding is
   - To accomplish my goal I need three components: .NET Framework
   4.5.1 package (provided by NetFx extension), C++ Runtime merge
   module, and MSI for my software
   - The two prerequisites needs to be installed on a per-machine
   (elevated) level, my software on a per-user level
  
   This is what I've tried:
   Attempt 1. Created a WiX bundle with two packages inside the Chain
  element:
   A PackageGroupRef for NetFx451Web, and an MsiPackage that includes
   my software as well as the C++ merge module.
   Problem: This wouldn't build because my software Package had
   InstallScope perUser but apparently the C++ merge module forced
   ALLUSERS=1 which conflicted with the perUser setting. This problem
   went away when I took the merge module out of the package.
  
   Attempt 2: Created a WiX bundle with three packages inside the Chain
   element: A PackageGroupRef for NetFx451Web, an MsiPackage for my C++
   Runtime merge module (InstallScope perMachine), and an MsiPackage
   for my software (InstallScope perUser).
   Problem: When running the resulting bundle it would prompt for
   elevation (which is fine), then install .NET Framework fine, then
   install the merge module fine, but throw an error for my perUser
   package: The installer has insufficient privileges to access this
   directory: C:\Program Files\product. The installation cannot
   continue. Log on as administrator or contact your system
 administrator.
  
   My software package uses a folder underneath ProgramFilesFolder as
   the target folder and I was expecting that on Win7 and up in a
   per-user install it automatically translates to LocalAppDataFolder
 instead.
  
   I thought from what I had gathered in this thread is that once the
   bundle gets elevated permissions it will also try to run my software
   package in forced per machine mode but without elevation, and
   therefore fails when trying to access the Program Files directory.
  
   Your last remark sounds though as if this should work. Please help
   me understand what I'm doing wrong

Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

2014-01-24 Thread Sascha
I just ran into this exact same issue and have been trying to find a suitable
solution. I need to install the .NET Framework and also a newer C++ runtime
as per-machine prerequisites but my software on a per-user basis.

Would using the managed bootstrapper help get around this issue by any
chance? My understanding is that using the managed bootstrapper means there
are actually two bootstrappers, one that takes care of installing .NET
Framework if needed, and then the managed one that gets launched after.

If the inner managed bootstrapper is capable of doing a regular per-user
install after the outer native bootstrapper installs the .NET Framework,
that would solve most of this issue. I say most because I also need to
install the C++ runtime, but for now I could resort to deploy the C++ DLLs
locally with my app instead of using the merge module.

I'm looking at some of the managed bootstrapper tutorials and blob posts
right now and will slap something together to try out this theory, but if
anybody already knows the answer that would be even better. I'll post
another reply with my findings once I'm done.

The only other alternative I see is using some other means like a simple
batch file to execute multiple bundles in series, that way I would have one
bundle with .NET and C++ runtime in it which would run per-machine or just
the MSIs for those without a bundle, and then another bundle with my
per-user software MSI. Not ideal especially for issues and error conditions,
but better than asking my end-user to run a couple of MSIs manually.

// Sascha



--
View this message in context: 
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/dual-purpose-installer-ALLUSERS-2-and-Bootstrapper-tp7591740p7592050.html
Sent from the wix-users mailing list archive at Nabble.com.

--
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments  Everything In Between.
Get a Quote or Start a Free Trial Today. 
http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

2014-01-24 Thread Rob Mensching
If you package is per-user then Burn handles that correctly. It will elevate 
only if necessary (i.e installing per-machine prerequisites) and install your 
per-user package.  Burn is *designed* to handle that correctly.

-Original Message-
From: Sascha [mailto:sascha.ser...@gmail.com] 
Sent: Friday, January 24, 2014 10:51 AM
To: wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

I just ran into this exact same issue and have been trying to find a suitable 
solution. I need to install the .NET Framework and also a newer C++ runtime as 
per-machine prerequisites but my software on a per-user basis.

Would using the managed bootstrapper help get around this issue by any chance? 
My understanding is that using the managed bootstrapper means there are 
actually two bootstrappers, one that takes care of installing .NET Framework if 
needed, and then the managed one that gets launched after.

If the inner managed bootstrapper is capable of doing a regular per-user 
install after the outer native bootstrapper installs the .NET Framework, that 
would solve most of this issue. I say most because I also need to install the 
C++ runtime, but for now I could resort to deploy the C++ DLLs locally with my 
app instead of using the merge module.

I'm looking at some of the managed bootstrapper tutorials and blob posts right 
now and will slap something together to try out this theory, but if anybody 
already knows the answer that would be even better. I'll post another reply 
with my findings once I'm done.

The only other alternative I see is using some other means like a simple batch 
file to execute multiple bundles in series, that way I would have one bundle 
with .NET and C++ runtime in it which would run per-machine or just the MSIs 
for those without a bundle, and then another bundle with my per-user software 
MSI. Not ideal especially for issues and error conditions, but better than 
asking my end-user to run a couple of MSIs manually.

// Sascha



--
View this message in context: 
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/dual-purpose-installer-ALLUSERS-2-and-Bootstrapper-tp7591740p7592050.html
Sent from the wix-users mailing list archive at Nabble.com.

--
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical 
Workloads, Development Environments  Everything In Between.
Get a Quote or Start a Free Trial Today. 
http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


--
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments  Everything In Between.
Get a Quote or Start a Free Trial Today. 
http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

2014-01-24 Thread Sascha Sertel
Let me clarify a bit to tell you what I'm trying to do, what I've tried,
and what I thought isn't currently working:

Goal: Build a WiX installer for my software which installs .NET Framework
4.5.1 if needed, C++ Runtime if needed, and my software. My software needs
to be installed per-user, i.e. it should go into AppData\Local, not Program
Files.

My understanding is
- To accomplish my goal I need three components: .NET Framework 4.5.1
package (provided by NetFx extension), C++ Runtime merge module, and MSI
for my software
- The two prerequisites needs to be installed on a per-machine (elevated)
level, my software on a per-user level

This is what I've tried:
Attempt 1. Created a WiX bundle with two packages inside the Chain element:
A PackageGroupRef for NetFx451Web, and an MsiPackage that includes my
software as well as the C++ merge module.
Problem: This wouldn't build because my software Package had InstallScope
perUser but apparently the C++ merge module forced ALLUSERS=1 which
conflicted with the perUser setting. This problem went away when I took the
merge module out of the package.

Attempt 2: Created a WiX bundle with three packages inside the Chain
element: A PackageGroupRef for NetFx451Web, an MsiPackage for my C++
Runtime merge module (InstallScope perMachine), and an MsiPackage for my
software (InstallScope perUser).
Problem: When running the resulting bundle it would prompt for elevation
(which is fine), then install .NET Framework fine, then install the merge
module fine, but throw an error for my perUser package: The installer has
insufficient privileges to access this directory: C:\Program
Files\product. The installation cannot continue. Log on as administrator
or contact your system administrator.

My software package uses a folder underneath ProgramFilesFolder as the
target folder and I was expecting that on Win7 and up in a per-user install
it automatically translates to LocalAppDataFolder instead.

I thought from what I had gathered in this thread is that once the bundle
gets elevated permissions it will also try to run my software package in
forced per machine mode but without elevation, and therefore fails when
trying to access the Program Files directory.

Your last remark sounds though as if this should work. Please help me
understand what I'm doing wrong.

// Sascha



On Fri, Jan 24, 2014 at 11:14 AM, Rob Mensching r...@robmensching.comwrote:

 If you package is per-user then Burn handles that correctly. It will
 elevate only if necessary (i.e installing per-machine prerequisites) and
 install your per-user package.  Burn is *designed* to handle that correctly.

 -Original Message-
 From: Sascha [mailto:sascha.ser...@gmail.com]
 Sent: Friday, January 24, 2014 10:51 AM
 To: wix-users@lists.sourceforge.net
 Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and
 Bootstrapper

 I just ran into this exact same issue and have been trying to find a
 suitable solution. I need to install the .NET Framework and also a newer
 C++ runtime as per-machine prerequisites but my software on a per-user
 basis.

 Would using the managed bootstrapper help get around this issue by any
 chance? My understanding is that using the managed bootstrapper means there
 are actually two bootstrappers, one that takes care of installing .NET
 Framework if needed, and then the managed one that gets launched after.

 If the inner managed bootstrapper is capable of doing a regular per-user
 install after the outer native bootstrapper installs the .NET Framework,
 that would solve most of this issue. I say most because I also need to
 install the C++ runtime, but for now I could resort to deploy the C++ DLLs
 locally with my app instead of using the merge module.

 I'm looking at some of the managed bootstrapper tutorials and blob posts
 right now and will slap something together to try out this theory, but if
 anybody already knows the answer that would be even better. I'll post
 another reply with my findings once I'm done.

 The only other alternative I see is using some other means like a simple
 batch file to execute multiple bundles in series, that way I would have one
 bundle with .NET and C++ runtime in it which would run per-machine or just
 the MSIs for those without a bundle, and then another bundle with my
 per-user software MSI. Not ideal especially for issues and error
 conditions, but better than asking my end-user to run a couple of MSIs
 manually.

 // Sascha



 --
 View this message in context:
 http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/dual-purpose-installer-ALLUSERS-2-and-Bootstrapper-tp7591740p7592050.html
 Sent from the wix-users mailing list archive at Nabble.com.


 --
 CenturyLink Cloud: The Leader in Enterprise Cloud Services.
 Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical
 Workloads, Development Environments  Everything In Between.
 Get a Quote

Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

2014-01-24 Thread Wesley Manning
Peruser can't install to C:\Program Files\.  That's a per machine location.

-Original Message-
From: Sascha Sertel [mailto:sascha.ser...@gmail.com] 
Sent: January-24-14 4:18 PM
To: General discussion about the WiX toolset.
Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

Let me clarify a bit to tell you what I'm trying to do, what I've tried, and 
what I thought isn't currently working:

Goal: Build a WiX installer for my software which installs .NET Framework
4.5.1 if needed, C++ Runtime if needed, and my software. My software needs to 
be installed per-user, i.e. it should go into AppData\Local, not Program Files.

My understanding is
- To accomplish my goal I need three components: .NET Framework 4.5.1 package 
(provided by NetFx extension), C++ Runtime merge module, and MSI for my software
- The two prerequisites needs to be installed on a per-machine (elevated) 
level, my software on a per-user level

This is what I've tried:
Attempt 1. Created a WiX bundle with two packages inside the Chain element:
A PackageGroupRef for NetFx451Web, and an MsiPackage that includes my software 
as well as the C++ merge module.
Problem: This wouldn't build because my software Package had InstallScope 
perUser but apparently the C++ merge module forced ALLUSERS=1 which 
conflicted with the perUser setting. This problem went away when I took the 
merge module out of the package.

Attempt 2: Created a WiX bundle with three packages inside the Chain
element: A PackageGroupRef for NetFx451Web, an MsiPackage for my C++ Runtime 
merge module (InstallScope perMachine), and an MsiPackage for my software 
(InstallScope perUser).
Problem: When running the resulting bundle it would prompt for elevation (which 
is fine), then install .NET Framework fine, then install the merge module fine, 
but throw an error for my perUser package: The installer has insufficient 
privileges to access this directory: C:\Program Files\product. The 
installation cannot continue. Log on as administrator or contact your system 
administrator.

My software package uses a folder underneath ProgramFilesFolder as the target 
folder and I was expecting that on Win7 and up in a per-user install it 
automatically translates to LocalAppDataFolder instead.

I thought from what I had gathered in this thread is that once the bundle gets 
elevated permissions it will also try to run my software package in forced per 
machine mode but without elevation, and therefore fails when trying to access 
the Program Files directory.

Your last remark sounds though as if this should work. Please help me 
understand what I'm doing wrong.

// Sascha



On Fri, Jan 24, 2014 at 11:14 AM, Rob Mensching r...@robmensching.comwrote:

 If you package is per-user then Burn handles that correctly. It will 
 elevate only if necessary (i.e installing per-machine prerequisites) 
 and install your per-user package.  Burn is *designed* to handle that 
 correctly.

 -Original Message-
 From: Sascha [mailto:sascha.ser...@gmail.com]
 Sent: Friday, January 24, 2014 10:51 AM
 To: wix-users@lists.sourceforge.net
 Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and 
 Bootstrapper

 I just ran into this exact same issue and have been trying to find a 
 suitable solution. I need to install the .NET Framework and also a 
 newer
 C++ runtime as per-machine prerequisites but my software on a per-user
 basis.

 Would using the managed bootstrapper help get around this issue by any 
 chance? My understanding is that using the managed bootstrapper means 
 there are actually two bootstrappers, one that takes care of 
 installing .NET Framework if needed, and then the managed one that gets 
 launched after.

 If the inner managed bootstrapper is capable of doing a regular 
 per-user install after the outer native bootstrapper installs the 
 .NET Framework, that would solve most of this issue. I say most 
 because I also need to install the C++ runtime, but for now I could 
 resort to deploy the C++ DLLs locally with my app instead of using the merge 
 module.

 I'm looking at some of the managed bootstrapper tutorials and blob 
 posts right now and will slap something together to try out this 
 theory, but if anybody already knows the answer that would be even 
 better. I'll post another reply with my findings once I'm done.

 The only other alternative I see is using some other means like a 
 simple batch file to execute multiple bundles in series, that way I 
 would have one bundle with .NET and C++ runtime in it which would run 
 per-machine or just the MSIs for those without a bundle, and then 
 another bundle with my per-user software MSI. Not ideal especially for 
 issues and error conditions, but better than asking my end-user to run 
 a couple of MSIs manually.

 // Sascha



 --
 View this message in context:
 http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/dual-pur
 pose-installer-ALLUSERS-2-and-Bootstrapper

Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

2014-01-24 Thread Wesley Manning
 My software package uses a folder underneath ProgramFilesFolder as the target 
folder and I was expecting that on Win7 and up in a per-user install it 
automatically translates to LocalAppDataFolder instead.

I think Vista maybe but I think windows 7 doesn't do that.  Don't quote 
me.  I just vaguely remember reading something about that.  Maybe someone else 
can chime in.

Wes

-Original Message-
From: Sascha Sertel [mailto:sascha.ser...@gmail.com] 
Sent: January-24-14 4:18 PM
To: General discussion about the WiX toolset.
Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

Let me clarify a bit to tell you what I'm trying to do, what I've tried, and 
what I thought isn't currently working:

Goal: Build a WiX installer for my software which installs .NET Framework
4.5.1 if needed, C++ Runtime if needed, and my software. My software needs to 
be installed per-user, i.e. it should go into AppData\Local, not Program Files.

My understanding is
- To accomplish my goal I need three components: .NET Framework 4.5.1 package 
(provided by NetFx extension), C++ Runtime merge module, and MSI for my software
- The two prerequisites needs to be installed on a per-machine (elevated) 
level, my software on a per-user level

This is what I've tried:
Attempt 1. Created a WiX bundle with two packages inside the Chain element:
A PackageGroupRef for NetFx451Web, and an MsiPackage that includes my software 
as well as the C++ merge module.
Problem: This wouldn't build because my software Package had InstallScope 
perUser but apparently the C++ merge module forced ALLUSERS=1 which 
conflicted with the perUser setting. This problem went away when I took the 
merge module out of the package.

Attempt 2: Created a WiX bundle with three packages inside the Chain
element: A PackageGroupRef for NetFx451Web, an MsiPackage for my C++ Runtime 
merge module (InstallScope perMachine), and an MsiPackage for my software 
(InstallScope perUser).
Problem: When running the resulting bundle it would prompt for elevation (which 
is fine), then install .NET Framework fine, then install the merge module fine, 
but throw an error for my perUser package: The installer has insufficient 
privileges to access this directory: C:\Program Files\product. The 
installation cannot continue. Log on as administrator or contact your system 
administrator.

My software package uses a folder underneath ProgramFilesFolder as the target 
folder and I was expecting that on Win7 and up in a per-user install it 
automatically translates to LocalAppDataFolder instead.

I thought from what I had gathered in this thread is that once the bundle gets 
elevated permissions it will also try to run my software package in forced per 
machine mode but without elevation, and therefore fails when trying to access 
the Program Files directory.

Your last remark sounds though as if this should work. Please help me 
understand what I'm doing wrong.

// Sascha



On Fri, Jan 24, 2014 at 11:14 AM, Rob Mensching r...@robmensching.comwrote:

 If you package is per-user then Burn handles that correctly. It will 
 elevate only if necessary (i.e installing per-machine prerequisites) 
 and install your per-user package.  Burn is *designed* to handle that 
 correctly.

 -Original Message-
 From: Sascha [mailto:sascha.ser...@gmail.com]
 Sent: Friday, January 24, 2014 10:51 AM
 To: wix-users@lists.sourceforge.net
 Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and 
 Bootstrapper

 I just ran into this exact same issue and have been trying to find a 
 suitable solution. I need to install the .NET Framework and also a 
 newer
 C++ runtime as per-machine prerequisites but my software on a per-user
 basis.

 Would using the managed bootstrapper help get around this issue by any 
 chance? My understanding is that using the managed bootstrapper means 
 there are actually two bootstrappers, one that takes care of 
 installing .NET Framework if needed, and then the managed one that gets 
 launched after.

 If the inner managed bootstrapper is capable of doing a regular 
 per-user install after the outer native bootstrapper installs the 
 .NET Framework, that would solve most of this issue. I say most 
 because I also need to install the C++ runtime, but for now I could 
 resort to deploy the C++ DLLs locally with my app instead of using the merge 
 module.

 I'm looking at some of the managed bootstrapper tutorials and blob 
 posts right now and will slap something together to try out this 
 theory, but if anybody already knows the answer that would be even 
 better. I'll post another reply with my findings once I'm done.

 The only other alternative I see is using some other means like a 
 simple batch file to execute multiple bundles in series, that way I 
 would have one bundle with .NET and C++ runtime in it which would run 
 per-machine or just the MSIs for those without a bundle, and then 
 another bundle with my per-user

Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

2014-01-24 Thread Sascha Sertel
I think I figured it out! Typing up what I've done so far helped :-)

I had tried out so many things that I hadn't noticed I accidentally dropped
the MSIINSTALLPERUSER Property at some point. Putting back

Property Id=MSIINSTALLPERUSER Value=1 /

in my software package resolved the elevation issues in the bundle and .NET
Framework and C++ Runtime install fine as well as my user software package.
Yay!


On Fri, Jan 24, 2014 at 12:52 PM, Wesley Manning wmann...@dynagen.cawrote:

  My software package uses a folder underneath ProgramFilesFolder as the
 target folder and I was expecting that on Win7 and up in a per-user install
 it automatically translates to LocalAppDataFolder instead.

 I think Vista maybe but I think windows 7 doesn't do that.  Don't
 quote me.  I just vaguely remember reading something about that.  Maybe
 someone else can chime in.

 Wes

 -Original Message-
 From: Sascha Sertel [mailto:sascha.ser...@gmail.com]
 Sent: January-24-14 4:18 PM
 To: General discussion about the WiX toolset.
 Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and
 Bootstrapper

 Let me clarify a bit to tell you what I'm trying to do, what I've tried,
 and what I thought isn't currently working:

 Goal: Build a WiX installer for my software which installs .NET Framework
 4.5.1 if needed, C++ Runtime if needed, and my software. My software needs
 to be installed per-user, i.e. it should go into AppData\Local, not Program
 Files.

 My understanding is
 - To accomplish my goal I need three components: .NET Framework 4.5.1
 package (provided by NetFx extension), C++ Runtime merge module, and MSI
 for my software
 - The two prerequisites needs to be installed on a per-machine (elevated)
 level, my software on a per-user level

 This is what I've tried:
 Attempt 1. Created a WiX bundle with two packages inside the Chain element:
 A PackageGroupRef for NetFx451Web, and an MsiPackage that includes my
 software as well as the C++ merge module.
 Problem: This wouldn't build because my software Package had InstallScope
 perUser but apparently the C++ merge module forced ALLUSERS=1 which
 conflicted with the perUser setting. This problem went away when I took the
 merge module out of the package.

 Attempt 2: Created a WiX bundle with three packages inside the Chain
 element: A PackageGroupRef for NetFx451Web, an MsiPackage for my C++
 Runtime merge module (InstallScope perMachine), and an MsiPackage for my
 software (InstallScope perUser).
 Problem: When running the resulting bundle it would prompt for elevation
 (which is fine), then install .NET Framework fine, then install the merge
 module fine, but throw an error for my perUser package: The installer has
 insufficient privileges to access this directory: C:\Program
 Files\product. The installation cannot continue. Log on as administrator
 or contact your system administrator.

 My software package uses a folder underneath ProgramFilesFolder as the
 target folder and I was expecting that on Win7 and up in a per-user install
 it automatically translates to LocalAppDataFolder instead.

 I thought from what I had gathered in this thread is that once the bundle
 gets elevated permissions it will also try to run my software package in
 forced per machine mode but without elevation, and therefore fails when
 trying to access the Program Files directory.

 Your last remark sounds though as if this should work. Please help me
 understand what I'm doing wrong.

 // Sascha



 On Fri, Jan 24, 2014 at 11:14 AM, Rob Mensching r...@robmensching.com
 wrote:

  If you package is per-user then Burn handles that correctly. It will
  elevate only if necessary (i.e installing per-machine prerequisites)
  and install your per-user package.  Burn is *designed* to handle that
 correctly.
 
  -Original Message-
  From: Sascha [mailto:sascha.ser...@gmail.com]
  Sent: Friday, January 24, 2014 10:51 AM
  To: wix-users@lists.sourceforge.net
  Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and
  Bootstrapper
 
  I just ran into this exact same issue and have been trying to find a
  suitable solution. I need to install the .NET Framework and also a
  newer
  C++ runtime as per-machine prerequisites but my software on a per-user
  basis.
 
  Would using the managed bootstrapper help get around this issue by any
  chance? My understanding is that using the managed bootstrapper means
  there are actually two bootstrappers, one that takes care of
  installing .NET Framework if needed, and then the managed one that gets
 launched after.
 
  If the inner managed bootstrapper is capable of doing a regular
  per-user install after the outer native bootstrapper installs the
  .NET Framework, that would solve most of this issue. I say most
  because I also need to install the C++ runtime, but for now I could
  resort to deploy the C++ DLLs locally with my app instead of using the
 merge module.
 
  I'm looking at some of the managed bootstrapper tutorials

Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

2014-01-24 Thread Rob Mensching
Burn does lots of work to make this scenario work (per-machine prerequisites 
and one or more per-user packages). It's unique among bootstrappers because it 
does it in all the right user contexts and all that. I saw a follow up email 
from you on a fork of this thread that found the most important thing: You need 
to make sure your per-user package is truly per-user.  The easiest way to do 
that is to use: Package/@InstallScope='perUser'.

-Original Message-
From: Sascha Sertel [mailto:sascha.ser...@gmail.com] 
Sent: Friday, January 24, 2014 12:18 PM
To: General discussion about the WiX toolset.
Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

Let me clarify a bit to tell you what I'm trying to do, what I've tried, and 
what I thought isn't currently working:

Goal: Build a WiX installer for my software which installs .NET Framework
4.5.1 if needed, C++ Runtime if needed, and my software. My software needs to 
be installed per-user, i.e. it should go into AppData\Local, not Program Files.

My understanding is
- To accomplish my goal I need three components: .NET Framework 4.5.1 package 
(provided by NetFx extension), C++ Runtime merge module, and MSI for my software
- The two prerequisites needs to be installed on a per-machine (elevated) 
level, my software on a per-user level

This is what I've tried:
Attempt 1. Created a WiX bundle with two packages inside the Chain element:
A PackageGroupRef for NetFx451Web, and an MsiPackage that includes my software 
as well as the C++ merge module.
Problem: This wouldn't build because my software Package had InstallScope 
perUser but apparently the C++ merge module forced ALLUSERS=1 which 
conflicted with the perUser setting. This problem went away when I took the 
merge module out of the package.

Attempt 2: Created a WiX bundle with three packages inside the Chain
element: A PackageGroupRef for NetFx451Web, an MsiPackage for my C++ Runtime 
merge module (InstallScope perMachine), and an MsiPackage for my software 
(InstallScope perUser).
Problem: When running the resulting bundle it would prompt for elevation (which 
is fine), then install .NET Framework fine, then install the merge module fine, 
but throw an error for my perUser package: The installer has insufficient 
privileges to access this directory: C:\Program Files\product. The 
installation cannot continue. Log on as administrator or contact your system 
administrator.

My software package uses a folder underneath ProgramFilesFolder as the target 
folder and I was expecting that on Win7 and up in a per-user install it 
automatically translates to LocalAppDataFolder instead.

I thought from what I had gathered in this thread is that once the bundle gets 
elevated permissions it will also try to run my software package in forced per 
machine mode but without elevation, and therefore fails when trying to access 
the Program Files directory.

Your last remark sounds though as if this should work. Please help me 
understand what I'm doing wrong.

// Sascha



On Fri, Jan 24, 2014 at 11:14 AM, Rob Mensching r...@robmensching.comwrote:

 If you package is per-user then Burn handles that correctly. It will 
 elevate only if necessary (i.e installing per-machine prerequisites) 
 and install your per-user package.  Burn is *designed* to handle that 
 correctly.

 -Original Message-
 From: Sascha [mailto:sascha.ser...@gmail.com]
 Sent: Friday, January 24, 2014 10:51 AM
 To: wix-users@lists.sourceforge.net
 Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and 
 Bootstrapper

 I just ran into this exact same issue and have been trying to find a 
 suitable solution. I need to install the .NET Framework and also a 
 newer
 C++ runtime as per-machine prerequisites but my software on a per-user
 basis.

 Would using the managed bootstrapper help get around this issue by any 
 chance? My understanding is that using the managed bootstrapper means 
 there are actually two bootstrappers, one that takes care of 
 installing .NET Framework if needed, and then the managed one that gets 
 launched after.

 If the inner managed bootstrapper is capable of doing a regular 
 per-user install after the outer native bootstrapper installs the 
 .NET Framework, that would solve most of this issue. I say most 
 because I also need to install the C++ runtime, but for now I could 
 resort to deploy the C++ DLLs locally with my app instead of using the merge 
 module.

 I'm looking at some of the managed bootstrapper tutorials and blob 
 posts right now and will slap something together to try out this 
 theory, but if anybody already knows the answer that would be even 
 better. I'll post another reply with my findings once I'm done.

 The only other alternative I see is using some other means like a 
 simple batch file to execute multiple bundles in series, that way I 
 would have one bundle with .NET and C++ runtime in it which would run 
 per-machine or just the MSIs for those

Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

2014-01-24 Thread Rob Mensching
If you really want a per-user package, it's easier to just set 
Package/@InstallScope='perUser' and remove the ALLUSERS and MSIINSTALLPERUSER 
properties completely.

-Original Message-
From: Sascha Sertel [mailto:sascha.ser...@gmail.com] 
Sent: Friday, January 24, 2014 1:18 PM
To: General discussion about the WiX toolset.
Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

I think I figured it out! Typing up what I've done so far helped :-)

I had tried out so many things that I hadn't noticed I accidentally dropped the 
MSIINSTALLPERUSER Property at some point. Putting back

Property Id=MSIINSTALLPERUSER Value=1 /

in my software package resolved the elevation issues in the bundle and .NET 
Framework and C++ Runtime install fine as well as my user software package.
Yay!


On Fri, Jan 24, 2014 at 12:52 PM, Wesley Manning wmann...@dynagen.cawrote:

  My software package uses a folder underneath ProgramFilesFolder as 
 the target folder and I was expecting that on Win7 and up in a 
 per-user install it automatically translates to LocalAppDataFolder instead.

 I think Vista maybe but I think windows 7 doesn't do that.  
 Don't quote me.  I just vaguely remember reading something about that.  
 Maybe someone else can chime in.

 Wes

 -Original Message-
 From: Sascha Sertel [mailto:sascha.ser...@gmail.com]
 Sent: January-24-14 4:18 PM
 To: General discussion about the WiX toolset.
 Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and 
 Bootstrapper

 Let me clarify a bit to tell you what I'm trying to do, what I've 
 tried, and what I thought isn't currently working:

 Goal: Build a WiX installer for my software which installs .NET 
 Framework
 4.5.1 if needed, C++ Runtime if needed, and my software. My software 
 needs to be installed per-user, i.e. it should go into AppData\Local, 
 not Program Files.

 My understanding is
 - To accomplish my goal I need three components: .NET Framework 4.5.1 
 package (provided by NetFx extension), C++ Runtime merge module, and 
 MSI for my software
 - The two prerequisites needs to be installed on a per-machine 
 (elevated) level, my software on a per-user level

 This is what I've tried:
 Attempt 1. Created a WiX bundle with two packages inside the Chain element:
 A PackageGroupRef for NetFx451Web, and an MsiPackage that includes my 
 software as well as the C++ merge module.
 Problem: This wouldn't build because my software Package had 
 InstallScope perUser but apparently the C++ merge module forced 
 ALLUSERS=1 which conflicted with the perUser setting. This problem 
 went away when I took the merge module out of the package.

 Attempt 2: Created a WiX bundle with three packages inside the Chain
 element: A PackageGroupRef for NetFx451Web, an MsiPackage for my C++ 
 Runtime merge module (InstallScope perMachine), and an MsiPackage for 
 my software (InstallScope perUser).
 Problem: When running the resulting bundle it would prompt for 
 elevation (which is fine), then install .NET Framework fine, then 
 install the merge module fine, but throw an error for my perUser 
 package: The installer has insufficient privileges to access this 
 directory: C:\Program Files\product. The installation cannot 
 continue. Log on as administrator or contact your system administrator.

 My software package uses a folder underneath ProgramFilesFolder as the 
 target folder and I was expecting that on Win7 and up in a per-user 
 install it automatically translates to LocalAppDataFolder instead.

 I thought from what I had gathered in this thread is that once the 
 bundle gets elevated permissions it will also try to run my software 
 package in forced per machine mode but without elevation, and 
 therefore fails when trying to access the Program Files directory.

 Your last remark sounds though as if this should work. Please help me 
 understand what I'm doing wrong.

 // Sascha



 On Fri, Jan 24, 2014 at 11:14 AM, Rob Mensching r...@robmensching.com
 wrote:

  If you package is per-user then Burn handles that correctly. It will 
  elevate only if necessary (i.e installing per-machine prerequisites) 
  and install your per-user package.  Burn is *designed* to handle 
  that
 correctly.
 
  -Original Message-
  From: Sascha [mailto:sascha.ser...@gmail.com]
  Sent: Friday, January 24, 2014 10:51 AM
  To: wix-users@lists.sourceforge.net
  Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and 
  Bootstrapper
 
  I just ran into this exact same issue and have been trying to find a 
  suitable solution. I need to install the .NET Framework and also a 
  newer
  C++ runtime as per-machine prerequisites but my software on a 
  C++ per-user
  basis.
 
  Would using the managed bootstrapper help get around this issue by 
  any chance? My understanding is that using the managed bootstrapper 
  means there are actually two bootstrappers, one that takes care of 
  installing .NET Framework if needed

Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

2014-01-24 Thread Sascha Sertel
I always had Package/@InstallScope='perUser', that never changed.

But the key thing for me to get it to work was MSIINSTALLPERUSER=1, without
it I kept getting the insufficient privileges error both in the bundle and
when running the stand-alone MSI.

// Sascha



On Fri, Jan 24, 2014 at 1:34 PM, Rob Mensching r...@robmensching.com wrote:

 Burn does lots of work to make this scenario work (per-machine
 prerequisites and one or more per-user packages). It's unique among
 bootstrappers because it does it in all the right user contexts and all
 that. I saw a follow up email from you on a fork of this thread that found
 the most important thing: You need to make sure your per-user package is
 truly per-user.  The easiest way to do that is to use:
 Package/@InstallScope='perUser'.

 -Original Message-
 From: Sascha Sertel [mailto:sascha.ser...@gmail.com]
 Sent: Friday, January 24, 2014 12:18 PM
 To: General discussion about the WiX toolset.
 Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and
 Bootstrapper

 Let me clarify a bit to tell you what I'm trying to do, what I've tried,
 and what I thought isn't currently working:

 Goal: Build a WiX installer for my software which installs .NET Framework
 4.5.1 if needed, C++ Runtime if needed, and my software. My software needs
 to be installed per-user, i.e. it should go into AppData\Local, not Program
 Files.

 My understanding is
 - To accomplish my goal I need three components: .NET Framework 4.5.1
 package (provided by NetFx extension), C++ Runtime merge module, and MSI
 for my software
 - The two prerequisites needs to be installed on a per-machine (elevated)
 level, my software on a per-user level

 This is what I've tried:
 Attempt 1. Created a WiX bundle with two packages inside the Chain element:
 A PackageGroupRef for NetFx451Web, and an MsiPackage that includes my
 software as well as the C++ merge module.
 Problem: This wouldn't build because my software Package had InstallScope
 perUser but apparently the C++ merge module forced ALLUSERS=1 which
 conflicted with the perUser setting. This problem went away when I took the
 merge module out of the package.

 Attempt 2: Created a WiX bundle with three packages inside the Chain
 element: A PackageGroupRef for NetFx451Web, an MsiPackage for my C++
 Runtime merge module (InstallScope perMachine), and an MsiPackage for my
 software (InstallScope perUser).
 Problem: When running the resulting bundle it would prompt for elevation
 (which is fine), then install .NET Framework fine, then install the merge
 module fine, but throw an error for my perUser package: The installer has
 insufficient privileges to access this directory: C:\Program
 Files\product. The installation cannot continue. Log on as administrator
 or contact your system administrator.

 My software package uses a folder underneath ProgramFilesFolder as the
 target folder and I was expecting that on Win7 and up in a per-user install
 it automatically translates to LocalAppDataFolder instead.

 I thought from what I had gathered in this thread is that once the bundle
 gets elevated permissions it will also try to run my software package in
 forced per machine mode but without elevation, and therefore fails when
 trying to access the Program Files directory.

 Your last remark sounds though as if this should work. Please help me
 understand what I'm doing wrong.

 // Sascha



 On Fri, Jan 24, 2014 at 11:14 AM, Rob Mensching r...@robmensching.com
 wrote:

  If you package is per-user then Burn handles that correctly. It will
  elevate only if necessary (i.e installing per-machine prerequisites)
  and install your per-user package.  Burn is *designed* to handle that
 correctly.
 
  -Original Message-
  From: Sascha [mailto:sascha.ser...@gmail.com]
  Sent: Friday, January 24, 2014 10:51 AM
  To: wix-users@lists.sourceforge.net
  Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and
  Bootstrapper
 
  I just ran into this exact same issue and have been trying to find a
  suitable solution. I need to install the .NET Framework and also a
  newer
  C++ runtime as per-machine prerequisites but my software on a per-user
  basis.
 
  Would using the managed bootstrapper help get around this issue by any
  chance? My understanding is that using the managed bootstrapper means
  there are actually two bootstrappers, one that takes care of
  installing .NET Framework if needed, and then the managed one that gets
 launched after.
 
  If the inner managed bootstrapper is capable of doing a regular
  per-user install after the outer native bootstrapper installs the
  .NET Framework, that would solve most of this issue. I say most
  because I also need to install the C++ runtime, but for now I could
  resort to deploy the C++ DLLs locally with my app instead of using the
 merge module.
 
  I'm looking at some of the managed bootstrapper tutorials and blob
  posts right now and will slap something together to try out

Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

2014-01-24 Thread Rob Mensching
Did you have ALLUSERS set the whole time as well?

-Original Message-
From: Sascha Sertel [mailto:sascha.ser...@gmail.com] 
Sent: Friday, January 24, 2014 2:21 PM
To: General discussion about the WiX toolset.
Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

I always had Package/@InstallScope='perUser', that never changed.

But the key thing for me to get it to work was MSIINSTALLPERUSER=1, without it 
I kept getting the insufficient privileges error both in the bundle and when 
running the stand-alone MSI.

// Sascha



On Fri, Jan 24, 2014 at 1:34 PM, Rob Mensching r...@robmensching.com wrote:

 Burn does lots of work to make this scenario work (per-machine 
 prerequisites and one or more per-user packages). It's unique among 
 bootstrappers because it does it in all the right user contexts and 
 all that. I saw a follow up email from you on a fork of this thread 
 that found the most important thing: You need to make sure your 
 per-user package is truly per-user.  The easiest way to do that is to use:
 Package/@InstallScope='perUser'.

 -Original Message-
 From: Sascha Sertel [mailto:sascha.ser...@gmail.com]
 Sent: Friday, January 24, 2014 12:18 PM
 To: General discussion about the WiX toolset.
 Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and 
 Bootstrapper

 Let me clarify a bit to tell you what I'm trying to do, what I've 
 tried, and what I thought isn't currently working:

 Goal: Build a WiX installer for my software which installs .NET 
 Framework
 4.5.1 if needed, C++ Runtime if needed, and my software. My software 
 needs to be installed per-user, i.e. it should go into AppData\Local, 
 not Program Files.

 My understanding is
 - To accomplish my goal I need three components: .NET Framework 4.5.1 
 package (provided by NetFx extension), C++ Runtime merge module, and 
 MSI for my software
 - The two prerequisites needs to be installed on a per-machine 
 (elevated) level, my software on a per-user level

 This is what I've tried:
 Attempt 1. Created a WiX bundle with two packages inside the Chain element:
 A PackageGroupRef for NetFx451Web, and an MsiPackage that includes my 
 software as well as the C++ merge module.
 Problem: This wouldn't build because my software Package had 
 InstallScope perUser but apparently the C++ merge module forced 
 ALLUSERS=1 which conflicted with the perUser setting. This problem 
 went away when I took the merge module out of the package.

 Attempt 2: Created a WiX bundle with three packages inside the Chain
 element: A PackageGroupRef for NetFx451Web, an MsiPackage for my C++ 
 Runtime merge module (InstallScope perMachine), and an MsiPackage for 
 my software (InstallScope perUser).
 Problem: When running the resulting bundle it would prompt for 
 elevation (which is fine), then install .NET Framework fine, then 
 install the merge module fine, but throw an error for my perUser 
 package: The installer has insufficient privileges to access this 
 directory: C:\Program Files\product. The installation cannot 
 continue. Log on as administrator or contact your system administrator.

 My software package uses a folder underneath ProgramFilesFolder as the 
 target folder and I was expecting that on Win7 and up in a per-user 
 install it automatically translates to LocalAppDataFolder instead.

 I thought from what I had gathered in this thread is that once the 
 bundle gets elevated permissions it will also try to run my software 
 package in forced per machine mode but without elevation, and 
 therefore fails when trying to access the Program Files directory.

 Your last remark sounds though as if this should work. Please help me 
 understand what I'm doing wrong.

 // Sascha



 On Fri, Jan 24, 2014 at 11:14 AM, Rob Mensching r...@robmensching.com
 wrote:

  If you package is per-user then Burn handles that correctly. It will 
  elevate only if necessary (i.e installing per-machine prerequisites) 
  and install your per-user package.  Burn is *designed* to handle 
  that
 correctly.
 
  -Original Message-
  From: Sascha [mailto:sascha.ser...@gmail.com]
  Sent: Friday, January 24, 2014 10:51 AM
  To: wix-users@lists.sourceforge.net
  Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and 
  Bootstrapper
 
  I just ran into this exact same issue and have been trying to find a 
  suitable solution. I need to install the .NET Framework and also a 
  newer
  C++ runtime as per-machine prerequisites but my software on a 
  C++ per-user
  basis.
 
  Would using the managed bootstrapper help get around this issue by 
  any chance? My understanding is that using the managed bootstrapper 
  means there are actually two bootstrappers, one that takes care of 
  installing .NET Framework if needed, and then the managed one that 
  gets
 launched after.
 
  If the inner managed bootstrapper is capable of doing a regular 
  per-user install after the outer native bootstrapper installs the 
  .NET

Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

2014-01-24 Thread Sascha Sertel
No I did not set ALLUSERS directly.


On Fri, Jan 24, 2014 at 2:32 PM, Rob Mensching r...@robmensching.com wrote:

 Did you have ALLUSERS set the whole time as well?

 -Original Message-
 From: Sascha Sertel [mailto:sascha.ser...@gmail.com]
 Sent: Friday, January 24, 2014 2:21 PM
 To: General discussion about the WiX toolset.
 Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and
 Bootstrapper

 I always had Package/@InstallScope='perUser', that never changed.

 But the key thing for me to get it to work was MSIINSTALLPERUSER=1,
 without it I kept getting the insufficient privileges error both in the
 bundle and when running the stand-alone MSI.

 // Sascha



 On Fri, Jan 24, 2014 at 1:34 PM, Rob Mensching r...@robmensching.com
 wrote:

  Burn does lots of work to make this scenario work (per-machine
  prerequisites and one or more per-user packages). It's unique among
  bootstrappers because it does it in all the right user contexts and
  all that. I saw a follow up email from you on a fork of this thread
  that found the most important thing: You need to make sure your
  per-user package is truly per-user.  The easiest way to do that is to
 use:
  Package/@InstallScope='perUser'.
 
  -Original Message-
  From: Sascha Sertel [mailto:sascha.ser...@gmail.com]
  Sent: Friday, January 24, 2014 12:18 PM
  To: General discussion about the WiX toolset.
  Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and
  Bootstrapper
 
  Let me clarify a bit to tell you what I'm trying to do, what I've
  tried, and what I thought isn't currently working:
 
  Goal: Build a WiX installer for my software which installs .NET
  Framework
  4.5.1 if needed, C++ Runtime if needed, and my software. My software
  needs to be installed per-user, i.e. it should go into AppData\Local,
  not Program Files.
 
  My understanding is
  - To accomplish my goal I need three components: .NET Framework 4.5.1
  package (provided by NetFx extension), C++ Runtime merge module, and
  MSI for my software
  - The two prerequisites needs to be installed on a per-machine
  (elevated) level, my software on a per-user level
 
  This is what I've tried:
  Attempt 1. Created a WiX bundle with two packages inside the Chain
 element:
  A PackageGroupRef for NetFx451Web, and an MsiPackage that includes my
  software as well as the C++ merge module.
  Problem: This wouldn't build because my software Package had
  InstallScope perUser but apparently the C++ merge module forced
  ALLUSERS=1 which conflicted with the perUser setting. This problem
  went away when I took the merge module out of the package.
 
  Attempt 2: Created a WiX bundle with three packages inside the Chain
  element: A PackageGroupRef for NetFx451Web, an MsiPackage for my C++
  Runtime merge module (InstallScope perMachine), and an MsiPackage for
  my software (InstallScope perUser).
  Problem: When running the resulting bundle it would prompt for
  elevation (which is fine), then install .NET Framework fine, then
  install the merge module fine, but throw an error for my perUser
  package: The installer has insufficient privileges to access this
  directory: C:\Program Files\product. The installation cannot
  continue. Log on as administrator or contact your system administrator.
 
  My software package uses a folder underneath ProgramFilesFolder as the
  target folder and I was expecting that on Win7 and up in a per-user
  install it automatically translates to LocalAppDataFolder instead.
 
  I thought from what I had gathered in this thread is that once the
  bundle gets elevated permissions it will also try to run my software
  package in forced per machine mode but without elevation, and
  therefore fails when trying to access the Program Files directory.
 
  Your last remark sounds though as if this should work. Please help me
  understand what I'm doing wrong.
 
  // Sascha
 
 
 
  On Fri, Jan 24, 2014 at 11:14 AM, Rob Mensching r...@robmensching.com
  wrote:
 
   If you package is per-user then Burn handles that correctly. It will
   elevate only if necessary (i.e installing per-machine prerequisites)
   and install your per-user package.  Burn is *designed* to handle
   that
  correctly.
  
   -Original Message-
   From: Sascha [mailto:sascha.ser...@gmail.com]
   Sent: Friday, January 24, 2014 10:51 AM
   To: wix-users@lists.sourceforge.net
   Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and
   Bootstrapper
  
   I just ran into this exact same issue and have been trying to find a
   suitable solution. I need to install the .NET Framework and also a
   newer
   C++ runtime as per-machine prerequisites but my software on a
   C++ per-user
   basis.
  
   Would using the managed bootstrapper help get around this issue by
   any chance? My understanding is that using the managed bootstrapper
   means there are actually two bootstrappers, one that takes care of
   installing .NET Framework if needed, and then the managed

Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

2014-01-15 Thread pjbirch
Ah, Ok. So I guess I need to build two bootstrappers: one for per-user and
one for per-machine?


robmen wrote
 WiX v3.8 (and probably all the way back to WiX v3.6, maybe further)
 supports building dual-purpose MSI packages. 
 
 However, Burn does not support Bundling MsiPackages and making them
 dual-purpose. It can only install them one way.





--
View this message in context: 
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/dual-purpose-installer-ALLUSERS-2-and-Bootstrapper-tp7591740p7591806.html
Sent from the wix-users mailing list archive at Nabble.com.

--
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments  Everything In Between.
Get a Quote or Start a Free Trial Today. 
http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

2014-01-15 Thread Steven Ogilvie
No I think he meant 2 MSI's and 1 bootstrapper...

-Original Message-
From: pjbirch [mailto:peter.bi...@myob.com] 
Sent: January-15-14 11:01 PM
To: wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

Ah, Ok. So I guess I need to build two bootstrappers: one for per-user and one 
for per-machine?


robmen wrote
 WiX v3.8 (and probably all the way back to WiX v3.6, maybe further) 
 supports building dual-purpose MSI packages.
 
 However, Burn does not support Bundling MsiPackages and making them 
 dual-purpose. It can only install them one way.





--
View this message in context: 
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/dual-purpose-installer-ALLUSERS-2-and-Bootstrapper-tp7591740p7591806.html
Sent from the wix-users mailing list archive at Nabble.com.

--
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical 
Workloads, Development Environments  Everything In Between.
Get a Quote or Start a Free Trial Today. 
http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

--
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments  Everything In Between.
Get a Quote or Start a Free Trial Today. 
http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

2014-01-15 Thread pjbirch
So I could add logic in the bootstrapper to install either the per-user or
per-machine .msi?  I was hoping to not have to build two duplicate .msi
packages.

Could I instead put some logic in the bootstrapper to pass either ALLUSERS=1
or ALLUSERS= to the .msi to do the switching, that way, I could continue
to build a single .msi?

cheers,



Steven Ogilvie wrote
 No I think he meant 2 MSI's and 1 bootstrapper...
 
 -Original Message-
 From: pjbirch [mailto:

 peter.birch@

 ] 
 Sent: January-15-14 11:01 PM
 To: 

 wix-users@.sourceforge

 Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and
 Bootstrapper
 
 Ah, Ok. So I guess I need to build two bootstrappers: one for per-user and
 one for per-machine?
 
 
 robmen wrote
 WiX v3.8 (and probably all the way back to WiX v3.6, maybe further) 
 supports building dual-purpose MSI packages.
 
 However, Burn does not support Bundling MsiPackages and making them 
 dual-purpose. It can only install them one way.
 
 
 
 
 
 --
 View this message in context:
 http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/dual-purpose-installer-ALLUSERS-2-and-Bootstrapper-tp7591740p7591806.html
 Sent from the wix-users mailing list archive at Nabble.com.
 
 --
 CenturyLink Cloud: The Leader in Enterprise Cloud Services.
 Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical
 Workloads, Development Environments  Everything In Between.
 Get a Quote or Start a Free Trial Today. 
 http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk
 ___
 WiX-users mailing list

 WiX-users@.sourceforge

 https://lists.sourceforge.net/lists/listinfo/wix-users
 
 --
 CenturyLink Cloud: The Leader in Enterprise Cloud Services.
 Learn Why More Businesses Are Choosing CenturyLink Cloud For
 Critical Workloads, Development Environments  Everything In Between.
 Get a Quote or Start a Free Trial Today. 
 http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk
 ___
 WiX-users mailing list

 WiX-users@.sourceforge

 https://lists.sourceforge.net/lists/listinfo/wix-users





--
View this message in context: 
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/dual-purpose-installer-ALLUSERS-2-and-Bootstrapper-tp7591740p7591809.html
Sent from the wix-users mailing list archive at Nabble.com.

--
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments  Everything In Between.
Get a Quote or Start a Free Trial Today. 
http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

2014-01-15 Thread Rob Mensching
There are lots of implications based on the value of ALLUSERS. Burn doesn't 
handle all the implications today and thus only supports one way or the other.

-Original Message-
From: pjbirch [mailto:peter.bi...@myob.com] 
Sent: Wednesday, January 15, 2014 9:35 PM
To: wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

So I could add logic in the bootstrapper to install either the per-user or 
per-machine .msi?  I was hoping to not have to build two duplicate .msi 
packages.

Could I instead put some logic in the bootstrapper to pass either ALLUSERS=1 or 
ALLUSERS= to the .msi to do the switching, that way, I could continue to 
build a single .msi?

cheers,



Steven Ogilvie wrote
 No I think he meant 2 MSI's and 1 bootstrapper...
 
 -Original Message-
 From: pjbirch [mailto:

 peter.birch@

 ]
 Sent: January-15-14 11:01 PM
 To: 

 wix-users@.sourceforge

 Subject: Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and 
 Bootstrapper
 
 Ah, Ok. So I guess I need to build two bootstrappers: one for per-user 
 and one for per-machine?
 
 
 robmen wrote
 WiX v3.8 (and probably all the way back to WiX v3.6, maybe further) 
 supports building dual-purpose MSI packages.
 
 However, Burn does not support Bundling MsiPackages and making them 
 dual-purpose. It can only install them one way.
 
 
 
 
 
 --
 View this message in context:
 http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/dual-pur
 pose-installer-ALLUSERS-2-and-Bootstrapper-tp7591740p7591806.html
 Sent from the wix-users mailing list archive at Nabble.com.
 
 --
  CenturyLink Cloud: The Leader in Enterprise Cloud Services.
 Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical 
 Workloads, Development Environments  Everything In Between.
 Get a Quote or Start a Free Trial Today. 
 http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.
 clktrk ___
 WiX-users mailing list

 WiX-users@.sourceforge

 https://lists.sourceforge.net/lists/listinfo/wix-users
 
 --
  CenturyLink Cloud: The Leader in Enterprise Cloud Services.
 Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical 
 Workloads, Development Environments  Everything In Between.
 Get a Quote or Start a Free Trial Today. 
 http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.
 clktrk ___
 WiX-users mailing list

 WiX-users@.sourceforge

 https://lists.sourceforge.net/lists/listinfo/wix-users





--
View this message in context: 
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/dual-purpose-installer-ALLUSERS-2-and-Bootstrapper-tp7591740p7591809.html
Sent from the wix-users mailing list archive at Nabble.com.

--
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical 
Workloads, Development Environments  Everything In Between.
Get a Quote or Start a Free Trial Today. 
http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


--
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments  Everything In Between.
Get a Quote or Start a Free Trial Today. 
http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

2014-01-13 Thread Rob Mensching
WiX v3.8 (and probably all the way back to WiX v3.6, maybe further) supports 
building dual-purpose MSI packages. 

However, Burn does not support Bundling MsiPackages and making them 
dual-purpose. It can only install them one way.


-Original Message-
From: Peter Birch [mailto:peter.bi...@myob.com] 
Sent: Monday, January 13, 2014 3:50 PM
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] dual-purpose installer (ALLUSERS=2) and Bootstrapper

Hi,
I'm trying to build a dual-purpose (both per-user and per-machine) package 
(http://msdn.microsoft.com/en-us/library/dd408068.aspx) using WIX 3.8.

I have the following in my package.wxs:


Wix xmlns=http://schemas.microsoft.com/wix/2006/wi; 
RequiredVersion=3.8.1128.0
  ?include Configuration.wxi ?
  Product Id=$(var.ProductId)
 Name=$(var.ProductName)
 Language=1033
 Version=$(var.ProductVersion)
 Manufacturer=$(var.CompanyName)
 UpgradeCode=$(var.UpgradeCode)
Package Id=*
 InstallerVersion=405
 Compressed=yes
 Manufacturer=$(var.CompanyName)
 Description=$(var.PackageDescription)
 /
Property Id=ALLUSERS Value=2 /
Property Id=MSIINSTALLPERUSER Value=1 / ...


This seems to have worked when building the .msi (although I had to add an 
ignore for ICE57 errors).

However, when I try to bundle the .msi into a bootstrapper as follows:


Wix xmlns=http://schemas.microsoft.com/wix/2006/wi;

  ?include BundleConfiguration.wxi ?

  ?define NetFx45MinRelease = 377811?

  Bundle Name=Blah.Bootstrapper

Version=1.0.0.0

Manufacturer=$(var.CompanyName)

UpgradeCode=$(var.UpgradeCode)

IconSourceFile=..\Assets\Installer_Icon_31x31.ico



BootstrapperApplicationRef 
Id=WixStandardBootstrapperApplication.RtfLicense /



Chain

  MsiPackage SourceFile=..\Blah.Client\bin\$(var.Configuration)\Blah 
Client.msi

  Compressed=yes

  DisplayInternalUI=no

  Id=Blah.Client

  Vital=yes  /

/Chain

  /Bundle

I get the following warning when building the bootstrapper:

warning LGHT1133: Bundles require a package to be either per-machine or 
per-user. The MSI 'C:\Projects\ Installer\WIX\Blah.Client\bin\Debug\Blah 
Client.msi' ALLUSERS Property is set to '2' which may change from per-user to 
per-machine at install time. The Bundle will assume the package is per-machine 
and will not work correctly if that changes. If possible, remove the Property 
with Id='ALLUSERS' and use Package/@InstallScope attribute instead.

Also, when I try to run the bootstrapper, I get permission errors and it 
doesn't install as a per-user install.

Am I doing something wrong, or does WIX 3.8 not support dual-purpose packages?

Regards,
Peter



This email and any attachment are confidential. If you are not the intended 
recipient, please notify MYOB by reply email and delete this email. Please note 
that you must not access or use this email or any information in it. MYOB 
accepts no liability for viruses in this email or in any attachment to it.
--
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical 
Workloads, Development Environments  Everything In Between.
Get a Quote or Start a Free Trial Today. 
http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


--
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments  Everything In Between.
Get a Quote or Start a Free Trial Today. 
http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users