Re: [WiX-users] Multiple Instance installations from wix BA application

2014-08-01 Thread serkbugs
1 Probably not only for transforms but also for other cases in general. 
For example, run bundle with multiple(with different product codes) msi's more 
than once to remove selected msi's from machine. 
Can we do it now and keep a link in PF?

2 Yeah. I just wanted to ask, why we don't have this model in BA? I think it is 
an easy feature and people won't need to write some classes to parse and store 
these values.
 
3 Ok. 

01.08.2014, 08:49, Rob Mensching r...@firegiant.com:
 1. Sounds like you want support instance transforms. There is a feature 
 request for that.

 2. The BA is provided the BootstrapperApplicationData.xml with lots of 
 information. If more information is required, we could probably add it.

 3. You should be able to affect the requested state for the packages from 
 your BA via the PlanPackageBegin. That is the design. If it isn't working 
 it'd be considered a bug.

 -Original Message-
 From: serkbugs [mailto:serkb...@yandex.ru]
 Sent: Thursday, July 31, 2014 16:01
 To: General discussion about the WiX toolset.
 Subject: Re: [WiX-users] Multiple Instance installations from wix BA 
 application

 I'm newbie in installers and I can't  say that all things I wanted to have,  
 could be also helpful for other people.

 For now I can remember only a few things:

 For instance, a way to say to the bundle to stay in Programs and Features( 
 PF) (probably it is possible now but I didnt find any info about it). I 
 wanted to have possibility to run uninstall from PF for standard 
 installation and for installations with TRANSFORMS=:Ixx. I mean I wanted to 
 have a way to manage this process by myself. I can have a counter for 
 installed instances and remove a bundle link from  PF with the last 
 uninstalled instance .

 Also, it would be great to have a little bit more info about bundle and which 
 packages/features it contains.To get such info I used approach from this blog 
 http://bit.ly/1s7VPPZ (Part 3).

 Sometimes I wanted to configure install/update/remove process by myself 
 throught setting RequstedState in OnPlanPackageBegin event but it didn't 
 affect Execute(parameter from logs) and it didn't run my msi. I want some 
 methods in Engine/BA to force some things to happen.

 01.08.2014, 02:13, Rob Mensching r...@firegiant.com:
  What kind of control?

  -Original Message-
  From: serkbugs [mailto:serkb...@yandex.ru]
  Sent: Thursday, July 31, 2014 14:49
  To: General discussion about the WiX toolset.
  Subject: Re: [WiX-users] Multiple Instance installations from wix BA
  application

  Thanx for quick answer.
  I will try to do multiinstances in a different way(not through installer).

  One comment from my side after a few days trying to start it work.
  I think we need a little bit more control of installing process in BA 
 application.
  If I had more control over package detect/apply/etc. proces, I could fix 
 all problems I had.

  31.07.2014, 21:28, Rob Mensching r...@firegiant.com:
   There is a feature request open for Burn to support multiple instances.

   -Original Message-
   From: serkbugs [mailto:serkb...@yandex.ru]
   Sent: Thursday, July 31, 2014 01:51
   To: wix-users@lists.sourceforge.net
   Cc: Sergey Kozhemyachenko
   Subject: [WiX-users] Multiple Instance installations from wix BA
   application

   Hi,

   Our customer wants to install multiple instances of windows service per 
 each service(like SQL server installation with multiple instances).

   I was trying to build a prototype using custom BA 
 application(Microsoft.Tools.WindowsInstallerXml.Bootstrapper.BootstrapperApplication).

   I've read a lot of topics around  InstanceTransforms in msi and it looks 
 like I can start it work from msi with msiexec /i MultiInstance.msi 
 MSINEWINSTANCE=1 TRANSFORMS=:I01 but I cannot understand how to run it 
 properly from BA.

   Here is some pieces from my prototype.

   Msi(please don't pay attention to extra actions and properties):
   Wix xmlns=http://schemas.microsoft.com/wix/2006/wi;
 xmlns:util=http://schemas.microsoft.com/wix/UtilExtension;
   Product Id=$(var.I00) Name=$(var.ProductName32)
   Language=1033 Version=$(var.CurrentVersion) Manufacturer=Me inc
   UpgradeCode=$(var.UpgradeGuid)
   Package InstallerVersion=200 Compressed=yes
   InstallScope=perMachine /
   MajorUpgrade AllowDowngrades=no AllowSameVersionUpgrades=yes
 DowngradeErrorMessage=You can't downgrade
  this
   application Schedule=afterInstallExecute MigrateFeatures=yes/

   MediaTemplate EmbedCab=yes /
   Feature Id=ProductFeature Title=SetupProjectTest
   Level=1
   ComponentGroupRef Id=ProductComponents /
   /Feature
   Property Id=PATHTOCOPY Secure=yes/Property
   Property Id=PATHTOCOPYTO Secure=yes/Property
   Binary Id='CustomAction'
   SourceFile=$(var.TestCustomAction.TargetDir)TestCustomAction.CA.dll
   /

   Property Id

Re: [WiX-users] Multiple Instance installations from wix BA application

2014-08-01 Thread Rob Mensching
1. The packages a bundle manages must be listed in the Chain of the Bundle 
element. A bundle is an identity that manages a collection of packages. It's 
not an arbitrary scripting engine to add and remove packages it doesn't know 
anything about from the machine.

But if you are asking if bundle can change the state of packages in its Chain 
and stay in Programs/Features? Yes.

2. Because no one has enhanced the BA classes to read the file and proffer nice 
classes for it?

___
 FireGiant  |  Dedicated support for the WiX toolset  |  
http://www.firegiant.com/

-Original Message-
From: serkbugs [mailto:serkb...@yandex.ru] 
Sent: Friday, August 1, 2014 1:52 AM
To: General discussion about the WiX toolset.
Subject: Re: [WiX-users] Multiple Instance installations from wix BA application

1 Probably not only for transforms but also for other cases in general. 
For example, run bundle with multiple(with different product codes) msi's more 
than once to remove selected msi's from machine. 
Can we do it now and keep a link in PF?

2 Yeah. I just wanted to ask, why we don't have this model in BA? I think it is 
an easy feature and people won't need to write some classes to parse and store 
these values.
 
3 Ok. 

01.08.2014, 08:49, Rob Mensching r...@firegiant.com:
 1. Sounds like you want support instance transforms. There is a feature 
 request for that.

 2. The BA is provided the BootstrapperApplicationData.xml with lots of 
 information. If more information is required, we could probably add it.

 3. You should be able to affect the requested state for the packages from 
 your BA via the PlanPackageBegin. That is the design. If it isn't working 
 it'd be considered a bug.

 -Original Message-
 From: serkbugs [mailto:serkb...@yandex.ru]
 Sent: Thursday, July 31, 2014 16:01
 To: General discussion about the WiX toolset.
 Subject: Re: [WiX-users] Multiple Instance installations from wix BA 
 application

 I'm newbie in installers and I can't  say that all things I wanted to have,  
 could be also helpful for other people.

 For now I can remember only a few things:

 For instance, a way to say to the bundle to stay in Programs and Features( 
 PF) (probably it is possible now but I didnt find any info about it). I 
 wanted to have possibility to run uninstall from PF for standard 
 installation and for installations with TRANSFORMS=:Ixx. I mean I wanted to 
 have a way to manage this process by myself. I can have a counter for 
 installed instances and remove a bundle link from  PF with the last 
 uninstalled instance .

 Also, it would be great to have a little bit more info about bundle and which 
 packages/features it contains.To get such info I used approach from this blog 
 http://bit.ly/1s7VPPZ (Part 3).

 Sometimes I wanted to configure install/update/remove process by myself 
 throught setting RequstedState in OnPlanPackageBegin event but it didn't 
 affect Execute(parameter from logs) and it didn't run my msi. I want some 
 methods in Engine/BA to force some things to happen.

 01.08.2014, 02:13, Rob Mensching r...@firegiant.com:
  What kind of control?

  -Original Message-
  From: serkbugs [mailto:serkb...@yandex.ru]
  Sent: Thursday, July 31, 2014 14:49
  To: General discussion about the WiX toolset.
  Subject: Re: [WiX-users] Multiple Instance installations from wix BA
  application

  Thanx for quick answer.
  I will try to do multiinstances in a different way(not through installer).

  One comment from my side after a few days trying to start it work.
  I think we need a little bit more control of installing process in BA 
 application.
  If I had more control over package detect/apply/etc. proces, I could fix 
 all problems I had.

  31.07.2014, 21:28, Rob Mensching r...@firegiant.com:
   There is a feature request open for Burn to support multiple instances.

   -Original Message-
   From: serkbugs [mailto:serkb...@yandex.ru]
   Sent: Thursday, July 31, 2014 01:51
   To: wix-users@lists.sourceforge.net
   Cc: Sergey Kozhemyachenko
   Subject: [WiX-users] Multiple Instance installations from wix BA
   application

   Hi,

   Our customer wants to install multiple instances of windows service per 
 each service(like SQL server installation with multiple instances).

   I was trying to build a prototype using custom BA 
 application(Microsoft.Tools.WindowsInstallerXml.Bootstrapper.BootstrapperApplication).

   I've read a lot of topics around  InstanceTransforms in msi and it looks 
 like I can start it work from msi with msiexec /i MultiInstance.msi 
 MSINEWINSTANCE=1 TRANSFORMS=:I01 but I cannot understand how to run it 
 properly from BA.

   Here is some pieces from my prototype.

   Msi(please don't pay attention to extra actions and properties):
   Wix xmlns=http://schemas.microsoft.com/wix/2006/wi;
 xmlns:util=http://schemas.microsoft.com/wix/UtilExtension;
   Product Id=$(var.I00) Name

Re: [WiX-users] Multiple Instance installations from wix BA application

2014-08-01 Thread serkbugs
Thanx Jacob for the hint about multiple msi's with only one cab. 
I tried this approach today and it works fine. 

After a few days of googling the solution I understand that it wasn't good idea 
to use transformations :(


31.07.2014, 22:43, Hoover, Jacob jacob.hoo...@greenheck.com:
 Instances are ugly...  And to do them right would be very difficult.  There 
 aren't many restrictions to what a transform can do, so all the assumptions 
 that are made at compile time of the bundle would have to be re-evaluated.

 My preference would be to have multiple predefined MSI's, and use a single 
 external CAB that's common among all of them.

 -Original Message-
 From: Wesley Manning [mailto:wmann...@dynagen.ca]
 Sent: Thursday, July 31, 2014 12:50 PM
 To: 'General discussion about the WiX toolset.'
 Cc: 'Sergey Kozhemyachenko'
 Subject: Re: [WiX-users] Multiple Instance installations from wix BA 
 application

 I think you're the third or fourth person to ask on this mailing list in the 
 last year.  It's not supported.  There was a discussion on this mailing list 
 some time ago if I recall.

 -Original Message-
 From: serkbugs [mailto:serkb...@yandex.ru]
 Sent: July-31-14 5:51 AM
 To: wix-users@lists.sourceforge.net
 Cc: Sergey Kozhemyachenko
 Subject: [WiX-users] Multiple Instance installations from wix BA application

 Hi,

 Our customer wants to install multiple instances of windows service per each 
 service(like SQL server installation with multiple instances).

 I was trying to build a prototype using custom BA 
 application(Microsoft.Tools.WindowsInstallerXml.Bootstrapper.BootstrapperApp
 lication).

 I've read a lot of topics around  InstanceTransforms in msi and it looks like 
 I can start it work from msi with msiexec /i MultiInstance.msi
 MSINEWINSTANCE=1 TRANSFORMS=:I01 but I cannot understand how to run it 
 properly from BA.

 Here is some pieces from my prototype.

 Msi(please don't pay attention to extra actions and properties):
 Wix xmlns=http://schemas.microsoft.com/wix/2006/wi;
   xmlns:util=http://schemas.microsoft.com/wix/UtilExtension;
 Product Id=$(var.I00) Name=$(var.ProductName32) Language=1033
 Version=$(var.CurrentVersion) Manufacturer=Me inc
 UpgradeCode=$(var.UpgradeGuid)
 Package InstallerVersion=200 Compressed=yes
 InstallScope=perMachine /
 MajorUpgrade AllowDowngrades=no AllowSameVersionUpgrades=yes
   DowngradeErrorMessage=You can't downgrade this 
 application Schedule=afterInstallExecute MigrateFeatures=yes/

 MediaTemplate EmbedCab=yes /
 Feature Id=ProductFeature Title=SetupProjectTest Level=1
 ComponentGroupRef Id=ProductComponents /
 /Feature
 Property Id=PATHTOCOPY Secure=yes/Property
 Property Id=PATHTOCOPYTO Secure=yes/Property
 Binary Id='CustomAction'
 SourceFile=$(var.TestCustomAction.TargetDir)TestCustomAction.CA.dll /

 Property Id=PREVIOUSVERSIONSINSTALLED Secure=yes /
 Property Id='REINSTALLMODE' Value='amus'/
 Property Id='ServiceName' Value='Test Service Name 2'/
   Property Id='INSTANCEID' Value='I01'
 RegistrySearch Id=InstanceIdSearch Root=HKLM
 Key=Software\[Manufacturer]\[ProductCode]\$(var.ProductName32)
 Name=InstanceId Type=raw /
   /Property
 InstanceTransforms Property='INSTANCEID'
   Instance Id='I01' ProductCode='$(var.I01)' ProductName='I01'/
   Instance Id='I02' ProductCode='$(var.I02)' ProductName='I02'/
   Instance Id='I03' ProductCode='$(var.I03)' ProductName='I03'/
 /InstanceTransforms
 /Product
 

 Bundle:

 Wix xmlns=http://schemas.microsoft.com/wix/2006/wi;
  xmlns:util=http://schemas.microsoft.com/wix/UtilExtension;
  xmlns:bal=http://schemas.microsoft.com/wix/BalExtension;

 Bundle Name=$(var.ProductName) Version=$(var.CurrentVersion)
 Manufacturer=$(var.Manufacturer) UpgradeCode=$(var.UpgradeGuid)

   BootstrapperApplicationRef Id=ManagedBootstrapperApplicationHost
 Payload
 SourceFile=$(var.TestBootstrapperApplication.TargetDir)BootstrapperCore.con
 fig/
 Payload
 SourceFile=$(var.TestBootstrapperApplication.TargetDir)TestBootstrapperAppl
 ication.dll/
 Payload
 SourceFile=$(var.TestBootstrapperApplication.TargetDir)GalaSoft.MvvmLight.W
 PF4.dll/
 Payload SourceFile=c:\Program Files (x86)\WiX Toolset 
 v3.7\SDK\Microsoft.Deployment.WindowsInstaller.dll/
   /BootstrapperApplicationRef

 Variable Name=DIR_EXISTS Value=NO Persisted=yes Type=string
 /
 Variable Name=PATHTOAPP Value=c:\program files 
 (x86)\SetupProjectTest\ Persisted=yes Type=string /

   Chain
 PackageGroupRef Id=NetFx40Web /
 PackageGroupRef Id=pkgMsi/
 /Chain

 /Bundle
 /Wix

 another bundle file:
  Fragment
 ..
   Variable Name='TRANSFORMS' bal:Overridable=yes/
   Variable Name='MSINEWINSTANCE' bal:Overridable=yes/ ..
   PackageGroup Id

[WiX-users] Multiple Instance installations from wix BA application

2014-07-31 Thread serkbugs
Hi,

Our customer wants to install multiple instances of windows service per each 
service(like SQL server installation with multiple instances). 

I was trying to build a prototype using custom BA 
application(Microsoft.Tools.WindowsInstallerXml.Bootstrapper.BootstrapperApplication).

I've read a lot of topics around  InstanceTransforms in msi and it looks like I 
can start it work from msi with msiexec /i MultiInstance.msi MSINEWINSTANCE=1 
TRANSFORMS=:I01 but I cannot understand how to run it properly from BA. 

Here is some pieces from my prototype.

Msi(please don't pay attention to extra actions and properties):
Wix xmlns=http://schemas.microsoft.com/wix/2006/wi;
  xmlns:util=http://schemas.microsoft.com/wix/UtilExtension;
Product Id=$(var.I00) Name=$(var.ProductName32) Language=1033 
Version=$(var.CurrentVersion) Manufacturer=Me inc 
UpgradeCode=$(var.UpgradeGuid)
Package InstallerVersion=200 Compressed=yes 
InstallScope=perMachine /
MajorUpgrade AllowDowngrades=no AllowSameVersionUpgrades=yes 
  DowngradeErrorMessage=You can't downgrade this 
application Schedule=afterInstallExecute MigrateFeatures=yes/

MediaTemplate EmbedCab=yes /
Feature Id=ProductFeature Title=SetupProjectTest Level=1
ComponentGroupRef Id=ProductComponents /
/Feature
Property Id=PATHTOCOPY Secure=yes/Property
Property Id=PATHTOCOPYTO Secure=yes/Property
Binary Id='CustomAction' 
SourceFile=$(var.TestCustomAction.TargetDir)TestCustomAction.CA.dll /

Property Id=PREVIOUSVERSIONSINSTALLED Secure=yes /
Property Id='REINSTALLMODE' Value='amus'/
Property Id='ServiceName' Value='Test Service Name 2'/
  Property Id='INSTANCEID' Value='I01'
RegistrySearch Id=InstanceIdSearch Root=HKLM 
Key=Software\[Manufacturer]\[ProductCode]\$(var.ProductName32) 
Name=InstanceId Type=raw /
  /Property
InstanceTransforms Property='INSTANCEID'
  Instance Id='I01' ProductCode='$(var.I01)' ProductName='I01'/
  Instance Id='I02' ProductCode='$(var.I02)' ProductName='I02'/
  Instance Id='I03' ProductCode='$(var.I03)' ProductName='I03'/
/InstanceTransforms
/Product



Bundle:

Wix xmlns=http://schemas.microsoft.com/wix/2006/wi;
 xmlns:util=http://schemas.microsoft.com/wix/UtilExtension;
 xmlns:bal=http://schemas.microsoft.com/wix/BalExtension;

Bundle Name=$(var.ProductName) Version=$(var.CurrentVersion) 
Manufacturer=$(var.Manufacturer) UpgradeCode=$(var.UpgradeGuid)  

  BootstrapperApplicationRef Id=ManagedBootstrapperApplicationHost
Payload 
SourceFile=$(var.TestBootstrapperApplication.TargetDir)BootstrapperCore.config/
Payload 
SourceFile=$(var.TestBootstrapperApplication.TargetDir)TestBootstrapperApplication.dll/
Payload 
SourceFile=$(var.TestBootstrapperApplication.TargetDir)GalaSoft.MvvmLight.WPF4.dll/
Payload SourceFile=c:\Program Files (x86)\WiX Toolset 
v3.7\SDK\Microsoft.Deployment.WindowsInstaller.dll/
  /BootstrapperApplicationRef


Variable Name=DIR_EXISTS Value=NO Persisted=yes Type=string /
Variable Name=PATHTOAPP Value=c:\program files 
(x86)\SetupProjectTest\ Persisted=yes Type=string /

  

  Chain
PackageGroupRef Id=NetFx40Web /
PackageGroupRef Id=pkgMsi/
/Chain

/Bundle
/Wix

another bundle file:
 Fragment
..
  Variable Name='TRANSFORMS' bal:Overridable=yes/
  Variable Name='MSINEWINSTANCE' bal:Overridable=yes/
..
  PackageGroup Id=pkgMsi
MsiPackage Id=package32
  
SourceFile=$(var.SetupProjectTest.TargetDir)\SetupProjectTest.msi
  Vital=yes
  LogPathVariable=WixBundleLog_package32
  DisplayInternalUI=yes
  EnableFeatureSelection=no
  SuppressSignatureVerification=yes
  ForcePerMachine=yes
  InstallCondition=NOT TRANSFORMS
  
  MsiProperty Name=INSTALLFOLDER Value=[INSTALLFOLDER]/
/MsiPackage

MsiPackage Id=package32Multiple

SourceFile=$(var.SetupProjectTest.TargetDir)\SetupProjectTest.msi
Vital=yes
LogPathVariable=WixBundleLog_package32
DisplayInternalUI=yes
EnableFeatureSelection=no
SuppressSignatureVerification=yes
ForcePerMachine=yes
InstallCondition=TRANSFORMS

  MsiProperty Name=TRANSFORMS Value=:I01/
  MsiProperty Name=MSINEWINSTANCE Value=[MSINEWINSTANCE]/
  MsiProperty Name=INSTALLFOLDER Value=[INSTALLFOLDER]/
/MsiPackage 

/PackageGroup
I'm using the same msi but with different set of properties depends on some 
settings in BA. 

In BA code 

Re: [WiX-users] Multiple Instance installations from wix BA application

2014-07-31 Thread Rob Mensching
There is a feature request open for Burn to support multiple instances.

-Original Message-
From: serkbugs [mailto:serkb...@yandex.ru] 
Sent: Thursday, July 31, 2014 01:51
To: wix-users@lists.sourceforge.net
Cc: Sergey Kozhemyachenko
Subject: [WiX-users] Multiple Instance installations from wix BA application

Hi,

Our customer wants to install multiple instances of windows service per each 
service(like SQL server installation with multiple instances). 

I was trying to build a prototype using custom BA 
application(Microsoft.Tools.WindowsInstallerXml.Bootstrapper.BootstrapperApplication).

I've read a lot of topics around  InstanceTransforms in msi and it looks like I 
can start it work from msi with msiexec /i MultiInstance.msi MSINEWINSTANCE=1 
TRANSFORMS=:I01 but I cannot understand how to run it properly from BA. 

Here is some pieces from my prototype.

Msi(please don't pay attention to extra actions and properties):
Wix xmlns=http://schemas.microsoft.com/wix/2006/wi;
  xmlns:util=http://schemas.microsoft.com/wix/UtilExtension;
Product Id=$(var.I00) Name=$(var.ProductName32) Language=1033 
Version=$(var.CurrentVersion) Manufacturer=Me inc 
UpgradeCode=$(var.UpgradeGuid)
Package InstallerVersion=200 Compressed=yes 
InstallScope=perMachine /
MajorUpgrade AllowDowngrades=no AllowSameVersionUpgrades=yes 
  DowngradeErrorMessage=You can't downgrade this 
application Schedule=afterInstallExecute MigrateFeatures=yes/

MediaTemplate EmbedCab=yes /
Feature Id=ProductFeature Title=SetupProjectTest Level=1
ComponentGroupRef Id=ProductComponents /
/Feature
Property Id=PATHTOCOPY Secure=yes/Property
Property Id=PATHTOCOPYTO Secure=yes/Property
Binary Id='CustomAction' 
SourceFile=$(var.TestCustomAction.TargetDir)TestCustomAction.CA.dll /

Property Id=PREVIOUSVERSIONSINSTALLED Secure=yes /
Property Id='REINSTALLMODE' Value='amus'/
Property Id='ServiceName' Value='Test Service Name 2'/
  Property Id='INSTANCEID' Value='I01'
RegistrySearch Id=InstanceIdSearch Root=HKLM 
Key=Software\[Manufacturer]\[ProductCode]\$(var.ProductName32) 
Name=InstanceId Type=raw /
  /Property
InstanceTransforms Property='INSTANCEID'
  Instance Id='I01' ProductCode='$(var.I01)' ProductName='I01'/
  Instance Id='I02' ProductCode='$(var.I02)' ProductName='I02'/
  Instance Id='I03' ProductCode='$(var.I03)' ProductName='I03'/
/InstanceTransforms
/Product



Bundle:

Wix xmlns=http://schemas.microsoft.com/wix/2006/wi;
 xmlns:util=http://schemas.microsoft.com/wix/UtilExtension;
 xmlns:bal=http://schemas.microsoft.com/wix/BalExtension;

Bundle Name=$(var.ProductName) Version=$(var.CurrentVersion) 
Manufacturer=$(var.Manufacturer) UpgradeCode=$(var.UpgradeGuid)  

  BootstrapperApplicationRef Id=ManagedBootstrapperApplicationHost
Payload 
SourceFile=$(var.TestBootstrapperApplication.TargetDir)BootstrapperCore.config/
Payload 
SourceFile=$(var.TestBootstrapperApplication.TargetDir)TestBootstrapperApplication.dll/
Payload 
SourceFile=$(var.TestBootstrapperApplication.TargetDir)GalaSoft.MvvmLight.WPF4.dll/
Payload SourceFile=c:\Program Files (x86)\WiX Toolset 
v3.7\SDK\Microsoft.Deployment.WindowsInstaller.dll/
  /BootstrapperApplicationRef


Variable Name=DIR_EXISTS Value=NO Persisted=yes Type=string /
Variable Name=PATHTOAPP Value=c:\program files 
(x86)\SetupProjectTest\ Persisted=yes Type=string /

  

  Chain
PackageGroupRef Id=NetFx40Web /
PackageGroupRef Id=pkgMsi/
/Chain

/Bundle
/Wix

another bundle file:
 Fragment
..
  Variable Name='TRANSFORMS' bal:Overridable=yes/
  Variable Name='MSINEWINSTANCE' bal:Overridable=yes/ ..
  PackageGroup Id=pkgMsi
MsiPackage Id=package32
  
SourceFile=$(var.SetupProjectTest.TargetDir)\SetupProjectTest.msi
  Vital=yes
  LogPathVariable=WixBundleLog_package32
  DisplayInternalUI=yes
  EnableFeatureSelection=no
  SuppressSignatureVerification=yes
  ForcePerMachine=yes
  InstallCondition=NOT TRANSFORMS
  
  MsiProperty Name=INSTALLFOLDER Value=[INSTALLFOLDER]/
/MsiPackage

MsiPackage Id=package32Multiple

SourceFile=$(var.SetupProjectTest.TargetDir)\SetupProjectTest.msi
Vital=yes
LogPathVariable=WixBundleLog_package32
DisplayInternalUI=yes
EnableFeatureSelection=no
SuppressSignatureVerification=yes
ForcePerMachine=yes
InstallCondition=TRANSFORMS

  MsiProperty

Re: [WiX-users] Multiple Instance installations from wix BA application

2014-07-31 Thread Wesley Manning
I think you're the third or fourth person to ask on this mailing list in the
last year.  It's not supported.  There was a discussion on this mailing list
some time ago if I recall.

-Original Message-
From: serkbugs [mailto:serkb...@yandex.ru] 
Sent: July-31-14 5:51 AM
To: wix-users@lists.sourceforge.net
Cc: Sergey Kozhemyachenko
Subject: [WiX-users] Multiple Instance installations from wix BA application

Hi,

Our customer wants to install multiple instances of windows service per each
service(like SQL server installation with multiple instances). 

I was trying to build a prototype using custom BA
application(Microsoft.Tools.WindowsInstallerXml.Bootstrapper.BootstrapperApp
lication).

I've read a lot of topics around  InstanceTransforms in msi and it looks
like I can start it work from msi with msiexec /i MultiInstance.msi
MSINEWINSTANCE=1 TRANSFORMS=:I01 but I cannot understand how to run it
properly from BA. 

Here is some pieces from my prototype.

Msi(please don't pay attention to extra actions and properties):
Wix xmlns=http://schemas.microsoft.com/wix/2006/wi;
  xmlns:util=http://schemas.microsoft.com/wix/UtilExtension;
Product Id=$(var.I00) Name=$(var.ProductName32) Language=1033
Version=$(var.CurrentVersion) Manufacturer=Me inc
UpgradeCode=$(var.UpgradeGuid)
Package InstallerVersion=200 Compressed=yes
InstallScope=perMachine /
MajorUpgrade AllowDowngrades=no AllowSameVersionUpgrades=yes 
  DowngradeErrorMessage=You can't downgrade this
application Schedule=afterInstallExecute MigrateFeatures=yes/

MediaTemplate EmbedCab=yes /
Feature Id=ProductFeature Title=SetupProjectTest Level=1
ComponentGroupRef Id=ProductComponents /
/Feature
Property Id=PATHTOCOPY Secure=yes/Property
Property Id=PATHTOCOPYTO Secure=yes/Property
Binary Id='CustomAction'
SourceFile=$(var.TestCustomAction.TargetDir)TestCustomAction.CA.dll /

Property Id=PREVIOUSVERSIONSINSTALLED Secure=yes /
Property Id='REINSTALLMODE' Value='amus'/
Property Id='ServiceName' Value='Test Service Name 2'/
  Property Id='INSTANCEID' Value='I01'
RegistrySearch Id=InstanceIdSearch Root=HKLM
Key=Software\[Manufacturer]\[ProductCode]\$(var.ProductName32)
Name=InstanceId Type=raw /
  /Property
InstanceTransforms Property='INSTANCEID'
  Instance Id='I01' ProductCode='$(var.I01)' ProductName='I01'/
  Instance Id='I02' ProductCode='$(var.I02)' ProductName='I02'/
  Instance Id='I03' ProductCode='$(var.I03)' ProductName='I03'/
/InstanceTransforms
/Product



Bundle:

Wix xmlns=http://schemas.microsoft.com/wix/2006/wi;
 xmlns:util=http://schemas.microsoft.com/wix/UtilExtension;
 xmlns:bal=http://schemas.microsoft.com/wix/BalExtension;

Bundle Name=$(var.ProductName) Version=$(var.CurrentVersion)
Manufacturer=$(var.Manufacturer) UpgradeCode=$(var.UpgradeGuid)  

  BootstrapperApplicationRef Id=ManagedBootstrapperApplicationHost
Payload
SourceFile=$(var.TestBootstrapperApplication.TargetDir)BootstrapperCore.con
fig/
Payload
SourceFile=$(var.TestBootstrapperApplication.TargetDir)TestBootstrapperAppl
ication.dll/
Payload
SourceFile=$(var.TestBootstrapperApplication.TargetDir)GalaSoft.MvvmLight.W
PF4.dll/
Payload SourceFile=c:\Program Files (x86)\WiX Toolset
v3.7\SDK\Microsoft.Deployment.WindowsInstaller.dll/
  /BootstrapperApplicationRef


Variable Name=DIR_EXISTS Value=NO Persisted=yes Type=string
/
Variable Name=PATHTOAPP Value=c:\program files
(x86)\SetupProjectTest\ Persisted=yes Type=string /

  

  Chain
PackageGroupRef Id=NetFx40Web /
PackageGroupRef Id=pkgMsi/
/Chain

/Bundle
/Wix

another bundle file:
 Fragment
..
  Variable Name='TRANSFORMS' bal:Overridable=yes/
  Variable Name='MSINEWINSTANCE' bal:Overridable=yes/ ..
  PackageGroup Id=pkgMsi
MsiPackage Id=package32
 
SourceFile=$(var.SetupProjectTest.TargetDir)\SetupProjectTest.msi
  Vital=yes
  LogPathVariable=WixBundleLog_package32
  DisplayInternalUI=yes
  EnableFeatureSelection=no
  SuppressSignatureVerification=yes
  ForcePerMachine=yes
  InstallCondition=NOT TRANSFORMS
  
  MsiProperty Name=INSTALLFOLDER Value=[INSTALLFOLDER]/
/MsiPackage

MsiPackage Id=package32Multiple
 
SourceFile=$(var.SetupProjectTest.TargetDir)\SetupProjectTest.msi
Vital=yes
LogPathVariable=WixBundleLog_package32
DisplayInternalUI=yes
EnableFeatureSelection=no
SuppressSignatureVerification=yes
ForcePerMachine=yes
InstallCondition=TRANSFORMS

Re: [WiX-users] Multiple Instance installations from wix BA application

2014-07-31 Thread Hoover, Jacob
Instances are ugly...  And to do them right would be very difficult.  There 
aren't many restrictions to what a transform can do, so all the assumptions 
that are made at compile time of the bundle would have to be re-evaluated. 

My preference would be to have multiple predefined MSI's, and use a single 
external CAB that's common among all of them.  

-Original Message-
From: Wesley Manning [mailto:wmann...@dynagen.ca] 
Sent: Thursday, July 31, 2014 12:50 PM
To: 'General discussion about the WiX toolset.'
Cc: 'Sergey Kozhemyachenko'
Subject: Re: [WiX-users] Multiple Instance installations from wix BA application

I think you're the third or fourth person to ask on this mailing list in the 
last year.  It's not supported.  There was a discussion on this mailing list 
some time ago if I recall.

-Original Message-
From: serkbugs [mailto:serkb...@yandex.ru]
Sent: July-31-14 5:51 AM
To: wix-users@lists.sourceforge.net
Cc: Sergey Kozhemyachenko
Subject: [WiX-users] Multiple Instance installations from wix BA application

Hi,

Our customer wants to install multiple instances of windows service per each 
service(like SQL server installation with multiple instances). 

I was trying to build a prototype using custom BA 
application(Microsoft.Tools.WindowsInstallerXml.Bootstrapper.BootstrapperApp
lication).

I've read a lot of topics around  InstanceTransforms in msi and it looks like I 
can start it work from msi with msiexec /i MultiInstance.msi
MSINEWINSTANCE=1 TRANSFORMS=:I01 but I cannot understand how to run it 
properly from BA. 

Here is some pieces from my prototype.

Msi(please don't pay attention to extra actions and properties):
Wix xmlns=http://schemas.microsoft.com/wix/2006/wi;
  xmlns:util=http://schemas.microsoft.com/wix/UtilExtension;
Product Id=$(var.I00) Name=$(var.ProductName32) Language=1033
Version=$(var.CurrentVersion) Manufacturer=Me inc
UpgradeCode=$(var.UpgradeGuid)
Package InstallerVersion=200 Compressed=yes
InstallScope=perMachine /
MajorUpgrade AllowDowngrades=no AllowSameVersionUpgrades=yes 
  DowngradeErrorMessage=You can't downgrade this 
application Schedule=afterInstallExecute MigrateFeatures=yes/

MediaTemplate EmbedCab=yes /
Feature Id=ProductFeature Title=SetupProjectTest Level=1
ComponentGroupRef Id=ProductComponents /
/Feature
Property Id=PATHTOCOPY Secure=yes/Property
Property Id=PATHTOCOPYTO Secure=yes/Property
Binary Id='CustomAction'
SourceFile=$(var.TestCustomAction.TargetDir)TestCustomAction.CA.dll /

Property Id=PREVIOUSVERSIONSINSTALLED Secure=yes /
Property Id='REINSTALLMODE' Value='amus'/
Property Id='ServiceName' Value='Test Service Name 2'/
  Property Id='INSTANCEID' Value='I01'
RegistrySearch Id=InstanceIdSearch Root=HKLM
Key=Software\[Manufacturer]\[ProductCode]\$(var.ProductName32)
Name=InstanceId Type=raw /
  /Property
InstanceTransforms Property='INSTANCEID'
  Instance Id='I01' ProductCode='$(var.I01)' ProductName='I01'/
  Instance Id='I02' ProductCode='$(var.I02)' ProductName='I02'/
  Instance Id='I03' ProductCode='$(var.I03)' ProductName='I03'/
/InstanceTransforms
/Product



Bundle:

Wix xmlns=http://schemas.microsoft.com/wix/2006/wi;
 xmlns:util=http://schemas.microsoft.com/wix/UtilExtension;
 xmlns:bal=http://schemas.microsoft.com/wix/BalExtension;

Bundle Name=$(var.ProductName) Version=$(var.CurrentVersion)
Manufacturer=$(var.Manufacturer) UpgradeCode=$(var.UpgradeGuid)  

  BootstrapperApplicationRef Id=ManagedBootstrapperApplicationHost
Payload
SourceFile=$(var.TestBootstrapperApplication.TargetDir)BootstrapperCore.con
fig/
Payload
SourceFile=$(var.TestBootstrapperApplication.TargetDir)TestBootstrapperAppl
ication.dll/
Payload
SourceFile=$(var.TestBootstrapperApplication.TargetDir)GalaSoft.MvvmLight.W
PF4.dll/
Payload SourceFile=c:\Program Files (x86)\WiX Toolset 
v3.7\SDK\Microsoft.Deployment.WindowsInstaller.dll/
  /BootstrapperApplicationRef


Variable Name=DIR_EXISTS Value=NO Persisted=yes Type=string
/
Variable Name=PATHTOAPP Value=c:\program files 
(x86)\SetupProjectTest\ Persisted=yes Type=string /

  

  Chain
PackageGroupRef Id=NetFx40Web /
PackageGroupRef Id=pkgMsi/
/Chain

/Bundle
/Wix

another bundle file:
 Fragment
..
  Variable Name='TRANSFORMS' bal:Overridable=yes/
  Variable Name='MSINEWINSTANCE' bal:Overridable=yes/ ..
  PackageGroup Id=pkgMsi
MsiPackage Id=package32
 
SourceFile=$(var.SetupProjectTest.TargetDir)\SetupProjectTest.msi
  Vital=yes
  LogPathVariable=WixBundleLog_package32
  DisplayInternalUI=yes
  EnableFeatureSelection=no
  SuppressSignatureVerification=yes

Re: [WiX-users] Multiple Instance installations from wix BA application

2014-07-31 Thread Neil Sleightholm
 My preference would be to have multiple predefined MSI's, and use a single 
 external CAB that's common among all of them.  
For what it is worth that is how SQL 2005 worked.

-Original Message-
From: Hoover, Jacob [mailto:jacob.hoo...@greenheck.com] 
Sent: 31 July 2014 19:44
To: General discussion about the WiX toolset.
Cc: 'Sergey Kozhemyachenko'
Subject: Re: [WiX-users] Multiple Instance installations from wix BA application

Instances are ugly...  And to do them right would be very difficult.  There 
aren't many restrictions to what a transform can do, so all the assumptions 
that are made at compile time of the bundle would have to be re-evaluated. 

My preference would be to have multiple predefined MSI's, and use a single 
external CAB that's common among all of them.  

--
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls. 
Build a bridge from your legacy apps to the future.
http://pubads.g.doubleclick.net/gampad/clk?id=153845071iu=/4140/ostg.clktrk
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Multiple Instance installations from wix BA application

2014-07-31 Thread serkbugs
Thanx for quick answer. 
I will try to do multiinstances in a different way(not through installer).

One comment from my side after a few days trying to start it work. 
I think we need a little bit more control of installing process in BA 
application. 
If I had more control over package detect/apply/etc. proces, I could fix all 
problems I had.


31.07.2014, 21:28, Rob Mensching r...@firegiant.com:
 There is a feature request open for Burn to support multiple instances.

 -Original Message-
 From: serkbugs [mailto:serkb...@yandex.ru]
 Sent: Thursday, July 31, 2014 01:51
 To: wix-users@lists.sourceforge.net
 Cc: Sergey Kozhemyachenko
 Subject: [WiX-users] Multiple Instance installations from wix BA application

 Hi,

 Our customer wants to install multiple instances of windows service per each 
 service(like SQL server installation with multiple instances).

 I was trying to build a prototype using custom BA 
 application(Microsoft.Tools.WindowsInstallerXml.Bootstrapper.BootstrapperApplication).

 I've read a lot of topics around  InstanceTransforms in msi and it looks like 
 I can start it work from msi with msiexec /i MultiInstance.msi 
 MSINEWINSTANCE=1 TRANSFORMS=:I01 but I cannot understand how to run it 
 properly from BA.

 Here is some pieces from my prototype.

 Msi(please don't pay attention to extra actions and properties):
 Wix xmlns=http://schemas.microsoft.com/wix/2006/wi;
   xmlns:util=http://schemas.microsoft.com/wix/UtilExtension;
 Product Id=$(var.I00) Name=$(var.ProductName32) Language=1033 
 Version=$(var.CurrentVersion) Manufacturer=Me inc 
 UpgradeCode=$(var.UpgradeGuid)
 Package InstallerVersion=200 Compressed=yes 
 InstallScope=perMachine /
 MajorUpgrade AllowDowngrades=no AllowSameVersionUpgrades=yes
   DowngradeErrorMessage=You can't downgrade this 
 application Schedule=afterInstallExecute MigrateFeatures=yes/

 MediaTemplate EmbedCab=yes /
 Feature Id=ProductFeature Title=SetupProjectTest Level=1
 ComponentGroupRef Id=ProductComponents /
 /Feature
 Property Id=PATHTOCOPY Secure=yes/Property
 Property Id=PATHTOCOPYTO Secure=yes/Property
 Binary Id='CustomAction' 
 SourceFile=$(var.TestCustomAction.TargetDir)TestCustomAction.CA.dll /

 Property Id=PREVIOUSVERSIONSINSTALLED Secure=yes /
 Property Id='REINSTALLMODE' Value='amus'/
 Property Id='ServiceName' Value='Test Service Name 2'/
   Property Id='INSTANCEID' Value='I01'
 RegistrySearch Id=InstanceIdSearch Root=HKLM 
 Key=Software\[Manufacturer]\[ProductCode]\$(var.ProductName32) 
 Name=InstanceId Type=raw /
   /Property
 InstanceTransforms Property='INSTANCEID'
   Instance Id='I01' ProductCode='$(var.I01)' ProductName='I01'/
   Instance Id='I02' ProductCode='$(var.I02)' ProductName='I02'/
   Instance Id='I03' ProductCode='$(var.I03)' ProductName='I03'/
 /InstanceTransforms
 /Product
 

 Bundle:

 Wix xmlns=http://schemas.microsoft.com/wix/2006/wi;
  xmlns:util=http://schemas.microsoft.com/wix/UtilExtension;
  xmlns:bal=http://schemas.microsoft.com/wix/BalExtension;

 Bundle Name=$(var.ProductName) Version=$(var.CurrentVersion) 
 Manufacturer=$(var.Manufacturer) UpgradeCode=$(var.UpgradeGuid)

   BootstrapperApplicationRef Id=ManagedBootstrapperApplicationHost
 Payload 
 SourceFile=$(var.TestBootstrapperApplication.TargetDir)BootstrapperCore.config/
 Payload 
 SourceFile=$(var.TestBootstrapperApplication.TargetDir)TestBootstrapperApplication.dll/
 Payload 
 SourceFile=$(var.TestBootstrapperApplication.TargetDir)GalaSoft.MvvmLight.WPF4.dll/
 Payload SourceFile=c:\Program Files (x86)\WiX Toolset 
 v3.7\SDK\Microsoft.Deployment.WindowsInstaller.dll/
   /BootstrapperApplicationRef

 Variable Name=DIR_EXISTS Value=NO Persisted=yes Type=string 
 /
 Variable Name=PATHTOAPP Value=c:\program files 
 (x86)\SetupProjectTest\ Persisted=yes Type=string /

   Chain
 PackageGroupRef Id=NetFx40Web /
 PackageGroupRef Id=pkgMsi/
 /Chain

 /Bundle
 /Wix

 another bundle file:
  Fragment
 ..
   Variable Name='TRANSFORMS' bal:Overridable=yes/
   Variable Name='MSINEWINSTANCE' bal:Overridable=yes/ ..
   PackageGroup Id=pkgMsi
 MsiPackage Id=package32
   
 SourceFile=$(var.SetupProjectTest.TargetDir)\SetupProjectTest.msi
   Vital=yes
   LogPathVariable=WixBundleLog_package32
   DisplayInternalUI=yes
   EnableFeatureSelection=no
   SuppressSignatureVerification=yes
   ForcePerMachine=yes
   InstallCondition=NOT TRANSFORMS
   MsiProperty Name=INSTALLFOLDER Value=[INSTALLFOLDER]/
 /MsiPackage

 MsiPackage Id=package32Multiple
 
 SourceFile

Re: [WiX-users] Multiple Instance installations from wix BA application

2014-07-31 Thread serkbugs
Thanx guys for for some hints. 

After a few days of playing with Transformations I don't want to make this 
process more complicated. 
I think I will do all work I need just with custom utility for now. 

01.08.2014, 00:58, Neil Sleightholm n...@x2systems.com:
  My preference would be to have multiple predefined MSI's, and use a single 
 external CAB that's common among all of them.

 For what it is worth that is how SQL 2005 worked.

 -Original Message-
 From: Hoover, Jacob [mailto:jacob.hoo...@greenheck.com]
 Sent: 31 July 2014 19:44
 To: General discussion about the WiX toolset.
 Cc: 'Sergey Kozhemyachenko'
 Subject: Re: [WiX-users] Multiple Instance installations from wix BA 
 application

 Instances are ugly...  And to do them right would be very difficult.  There 
 aren't many restrictions to what a transform can do, so all the assumptions 
 that are made at compile time of the bundle would have to be re-evaluated.

 My preference would be to have multiple predefined MSI's, and use a single 
 external CAB that's common among all of them.

 --
 Infragistics Professional
 Build stunning WinForms apps today!
 Reboot your WinForms applications with our WinForms controls.
 Build a bridge from your legacy apps to the future.
 http://pubads.g.doubleclick.net/gampad/clk?id=153845071iu=/4140/ostg.clktrk
 ___
 WiX-users mailing list
 WiX-users@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/wix-users

--
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls. 
Build a bridge from your legacy apps to the future.
http://pubads.g.doubleclick.net/gampad/clk?id=153845071iu=/4140/ostg.clktrk
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Multiple Instance installations from wix BA application

2014-07-31 Thread Rob Mensching
What kind of control?

-Original Message-
From: serkbugs [mailto:serkb...@yandex.ru] 
Sent: Thursday, July 31, 2014 14:49
To: General discussion about the WiX toolset.
Subject: Re: [WiX-users] Multiple Instance installations from wix BA application

Thanx for quick answer. 
I will try to do multiinstances in a different way(not through installer).

One comment from my side after a few days trying to start it work. 
I think we need a little bit more control of installing process in BA 
application. 
If I had more control over package detect/apply/etc. proces, I could fix all 
problems I had.


31.07.2014, 21:28, Rob Mensching r...@firegiant.com:
 There is a feature request open for Burn to support multiple instances.

 -Original Message-
 From: serkbugs [mailto:serkb...@yandex.ru]
 Sent: Thursday, July 31, 2014 01:51
 To: wix-users@lists.sourceforge.net
 Cc: Sergey Kozhemyachenko
 Subject: [WiX-users] Multiple Instance installations from wix BA 
 application

 Hi,

 Our customer wants to install multiple instances of windows service per each 
 service(like SQL server installation with multiple instances).

 I was trying to build a prototype using custom BA 
 application(Microsoft.Tools.WindowsInstallerXml.Bootstrapper.BootstrapperApplication).

 I've read a lot of topics around  InstanceTransforms in msi and it looks like 
 I can start it work from msi with msiexec /i MultiInstance.msi 
 MSINEWINSTANCE=1 TRANSFORMS=:I01 but I cannot understand how to run it 
 properly from BA.

 Here is some pieces from my prototype.

 Msi(please don't pay attention to extra actions and properties):
 Wix xmlns=http://schemas.microsoft.com/wix/2006/wi;
   xmlns:util=http://schemas.microsoft.com/wix/UtilExtension;
 Product Id=$(var.I00) Name=$(var.ProductName32) 
 Language=1033 Version=$(var.CurrentVersion) Manufacturer=Me inc 
 UpgradeCode=$(var.UpgradeGuid)
 Package InstallerVersion=200 Compressed=yes 
 InstallScope=perMachine /
 MajorUpgrade AllowDowngrades=no AllowSameVersionUpgrades=yes
   DowngradeErrorMessage=You can't downgrade this 
 application Schedule=afterInstallExecute MigrateFeatures=yes/

 MediaTemplate EmbedCab=yes /
 Feature Id=ProductFeature Title=SetupProjectTest 
 Level=1
 ComponentGroupRef Id=ProductComponents /
 /Feature
 Property Id=PATHTOCOPY Secure=yes/Property
 Property Id=PATHTOCOPYTO Secure=yes/Property
 Binary Id='CustomAction' 
 SourceFile=$(var.TestCustomAction.TargetDir)TestCustomAction.CA.dll 
 /

 Property Id=PREVIOUSVERSIONSINSTALLED Secure=yes /
 Property Id='REINSTALLMODE' Value='amus'/
 Property Id='ServiceName' Value='Test Service Name 2'/
   Property Id='INSTANCEID' Value='I01'
 RegistrySearch Id=InstanceIdSearch Root=HKLM 
 Key=Software\[Manufacturer]\[ProductCode]\$(var.ProductName32) 
 Name=InstanceId Type=raw /
   /Property
 InstanceTransforms Property='INSTANCEID'
   Instance Id='I01' ProductCode='$(var.I01)' 
 ProductName='I01'/
   Instance Id='I02' ProductCode='$(var.I02)' 
 ProductName='I02'/
   Instance Id='I03' ProductCode='$(var.I03)' 
 ProductName='I03'/
 /InstanceTransforms
 /Product
 

 Bundle:

 Wix xmlns=http://schemas.microsoft.com/wix/2006/wi;
  xmlns:util=http://schemas.microsoft.com/wix/UtilExtension;
  xmlns:bal=http://schemas.microsoft.com/wix/BalExtension;

 Bundle Name=$(var.ProductName) Version=$(var.CurrentVersion) 
 Manufacturer=$(var.Manufacturer) UpgradeCode=$(var.UpgradeGuid)

   BootstrapperApplicationRef 
 Id=ManagedBootstrapperApplicationHost
 Payload 
 SourceFile=$(var.TestBootstrapperApplication.TargetDir)BootstrapperCo
 re.config/
 Payload 
 SourceFile=$(var.TestBootstrapperApplication.TargetDir)TestBootstrapp
 erApplication.dll/
 Payload 
 SourceFile=$(var.TestBootstrapperApplication.TargetDir)GalaSoft.MvvmL
 ight.WPF4.dll/
 Payload SourceFile=c:\Program Files (x86)\WiX Toolset 
 v3.7\SDK\Microsoft.Deployment.WindowsInstaller.dll/
   /BootstrapperApplicationRef

 Variable Name=DIR_EXISTS Value=NO Persisted=yes 
 Type=string /
 Variable Name=PATHTOAPP Value=c:\program files 
 (x86)\SetupProjectTest\ Persisted=yes Type=string /

   Chain
 PackageGroupRef Id=NetFx40Web /
 PackageGroupRef Id=pkgMsi/
 /Chain

 /Bundle
 /Wix

 another bundle file:
  Fragment
 ..
   Variable Name='TRANSFORMS' bal:Overridable=yes/
   Variable Name='MSINEWINSTANCE' bal:Overridable=yes/ ..
   PackageGroup Id=pkgMsi
 MsiPackage Id=package32
   
 SourceFile=$(var.SetupProjectTest.TargetDir)\SetupProjectTest.msi
   Vital=yes
   LogPathVariable=WixBundleLog_package32
   DisplayInternalUI=yes
   EnableFeatureSelection

Re: [WiX-users] Multiple Instance installations from wix BA application

2014-07-31 Thread serkbugs
I'm newbie in installers and I can't  say that all things I wanted to have,  
could be also helpful for other people.

For now I can remember only a few things:

For instance, a way to say to the bundle to stay in Programs and Features( PF) 
(probably it is possible now but I didnt find any info about it). I wanted to 
have possibility to run uninstall from PF for standard installation and for 
installations with TRANSFORMS=:Ixx. I mean I wanted to have a way to manage 
this process by myself. I can have a counter for installed instances and remove 
a bundle link from  PF with the last uninstalled instance .

Also, it would be great to have a little bit more info about bundle and which 
packages/features it contains.To get such info I used approach from this blog 
http://bit.ly/1s7VPPZ (Part 3). 

Sometimes I wanted to configure install/update/remove process by myself 
throught setting RequstedState in OnPlanPackageBegin event but it didn't affect 
Execute(parameter from logs) and it didn't run my msi. I want some methods in 
Engine/BA to force some things to happen.



01.08.2014, 02:13, Rob Mensching r...@firegiant.com:
 What kind of control?

 -Original Message-
 From: serkbugs [mailto:serkb...@yandex.ru]
 Sent: Thursday, July 31, 2014 14:49
 To: General discussion about the WiX toolset.
 Subject: Re: [WiX-users] Multiple Instance installations from wix BA 
 application

 Thanx for quick answer.
 I will try to do multiinstances in a different way(not through installer).

 One comment from my side after a few days trying to start it work.
 I think we need a little bit more control of installing process in BA 
 application.
 If I had more control over package detect/apply/etc. proces, I could fix all 
 problems I had.

 31.07.2014, 21:28, Rob Mensching r...@firegiant.com:
  There is a feature request open for Burn to support multiple instances.

  -Original Message-
  From: serkbugs [mailto:serkb...@yandex.ru]
  Sent: Thursday, July 31, 2014 01:51
  To: wix-users@lists.sourceforge.net
  Cc: Sergey Kozhemyachenko
  Subject: [WiX-users] Multiple Instance installations from wix BA
  application

  Hi,

  Our customer wants to install multiple instances of windows service per 
 each service(like SQL server installation with multiple instances).

  I was trying to build a prototype using custom BA 
 application(Microsoft.Tools.WindowsInstallerXml.Bootstrapper.BootstrapperApplication).

  I've read a lot of topics around  InstanceTransforms in msi and it looks 
 like I can start it work from msi with msiexec /i MultiInstance.msi 
 MSINEWINSTANCE=1 TRANSFORMS=:I01 but I cannot understand how to run it 
 properly from BA.

  Here is some pieces from my prototype.

  Msi(please don't pay attention to extra actions and properties):
  Wix xmlns=http://schemas.microsoft.com/wix/2006/wi;
    xmlns:util=http://schemas.microsoft.com/wix/UtilExtension;
  Product Id=$(var.I00) Name=$(var.ProductName32)
  Language=1033 Version=$(var.CurrentVersion) Manufacturer=Me inc
  UpgradeCode=$(var.UpgradeGuid)
  Package InstallerVersion=200 Compressed=yes
  InstallScope=perMachine /
  MajorUpgrade AllowDowngrades=no AllowSameVersionUpgrades=yes
    DowngradeErrorMessage=You can't downgrade this
  application Schedule=afterInstallExecute MigrateFeatures=yes/

  MediaTemplate EmbedCab=yes /
  Feature Id=ProductFeature Title=SetupProjectTest
  Level=1
  ComponentGroupRef Id=ProductComponents /
  /Feature
  Property Id=PATHTOCOPY Secure=yes/Property
  Property Id=PATHTOCOPYTO Secure=yes/Property
  Binary Id='CustomAction'
  SourceFile=$(var.TestCustomAction.TargetDir)TestCustomAction.CA.dll
  /

  Property Id=PREVIOUSVERSIONSINSTALLED Secure=yes /
  Property Id='REINSTALLMODE' Value='amus'/
  Property Id='ServiceName' Value='Test Service Name 2'/
    Property Id='INSTANCEID' Value='I01'
  RegistrySearch Id=InstanceIdSearch Root=HKLM
  Key=Software\[Manufacturer]\[ProductCode]\$(var.ProductName32)
  Name=InstanceId Type=raw /
    /Property
  InstanceTransforms Property='INSTANCEID'
    Instance Id='I01' ProductCode='$(var.I01)'
  ProductName='I01'/
    Instance Id='I02' ProductCode='$(var.I02)'
  ProductName='I02'/
    Instance Id='I03' ProductCode='$(var.I03)'
  ProductName='I03'/
  /InstanceTransforms
  /Product
  

  Bundle:

  Wix xmlns=http://schemas.microsoft.com/wix/2006/wi;
   xmlns:util=http://schemas.microsoft.com/wix/UtilExtension;
   xmlns:bal=http://schemas.microsoft.com/wix/BalExtension;

  Bundle Name=$(var.ProductName) Version=$(var.CurrentVersion)
  Manufacturer=$(var.Manufacturer) UpgradeCode=$(var.UpgradeGuid)

    BootstrapperApplicationRef
  Id=ManagedBootstrapperApplicationHost
  Payload
  SourceFile=$(var.TestBootstrapperApplication.TargetDir)BootstrapperCo
  re.config

Re: [WiX-users] Multiple Instance installations from wix BA application

2014-07-31 Thread Rob Mensching
1. Sounds like you want support instance transforms. There is a feature request 
for that.

2. The BA is provided the BootstrapperApplicationData.xml with lots of 
information. If more information is required, we could probably add it.

3. You should be able to affect the requested state for the packages from your 
BA via the PlanPackageBegin. That is the design. If it isn't working it'd be 
considered a bug.

-Original Message-
From: serkbugs [mailto:serkb...@yandex.ru] 
Sent: Thursday, July 31, 2014 16:01
To: General discussion about the WiX toolset.
Subject: Re: [WiX-users] Multiple Instance installations from wix BA application

I'm newbie in installers and I can't  say that all things I wanted to have,  
could be also helpful for other people.

For now I can remember only a few things:

For instance, a way to say to the bundle to stay in Programs and Features( PF) 
(probably it is possible now but I didnt find any info about it). I wanted to 
have possibility to run uninstall from PF for standard installation and for 
installations with TRANSFORMS=:Ixx. I mean I wanted to have a way to manage 
this process by myself. I can have a counter for installed instances and remove 
a bundle link from  PF with the last uninstalled instance .

Also, it would be great to have a little bit more info about bundle and which 
packages/features it contains.To get such info I used approach from this blog 
http://bit.ly/1s7VPPZ (Part 3). 

Sometimes I wanted to configure install/update/remove process by myself 
throught setting RequstedState in OnPlanPackageBegin event but it didn't affect 
Execute(parameter from logs) and it didn't run my msi. I want some methods in 
Engine/BA to force some things to happen.



01.08.2014, 02:13, Rob Mensching r...@firegiant.com:
 What kind of control?

 -Original Message-
 From: serkbugs [mailto:serkb...@yandex.ru]
 Sent: Thursday, July 31, 2014 14:49
 To: General discussion about the WiX toolset.
 Subject: Re: [WiX-users] Multiple Instance installations from wix BA 
 application

 Thanx for quick answer.
 I will try to do multiinstances in a different way(not through installer).

 One comment from my side after a few days trying to start it work.
 I think we need a little bit more control of installing process in BA 
 application.
 If I had more control over package detect/apply/etc. proces, I could fix all 
 problems I had.

 31.07.2014, 21:28, Rob Mensching r...@firegiant.com:
  There is a feature request open for Burn to support multiple instances.

  -Original Message-
  From: serkbugs [mailto:serkb...@yandex.ru]
  Sent: Thursday, July 31, 2014 01:51
  To: wix-users@lists.sourceforge.net
  Cc: Sergey Kozhemyachenko
  Subject: [WiX-users] Multiple Instance installations from wix BA
  application

  Hi,

  Our customer wants to install multiple instances of windows service per 
 each service(like SQL server installation with multiple instances).

  I was trying to build a prototype using custom BA 
 application(Microsoft.Tools.WindowsInstallerXml.Bootstrapper.BootstrapperApplication).

  I've read a lot of topics around  InstanceTransforms in msi and it looks 
 like I can start it work from msi with msiexec /i MultiInstance.msi 
 MSINEWINSTANCE=1 TRANSFORMS=:I01 but I cannot understand how to run it 
 properly from BA.

  Here is some pieces from my prototype.

  Msi(please don't pay attention to extra actions and properties):
  Wix xmlns=http://schemas.microsoft.com/wix/2006/wi;
    xmlns:util=http://schemas.microsoft.com/wix/UtilExtension;
  Product Id=$(var.I00) Name=$(var.ProductName32)
  Language=1033 Version=$(var.CurrentVersion) Manufacturer=Me inc
  UpgradeCode=$(var.UpgradeGuid)
  Package InstallerVersion=200 Compressed=yes
  InstallScope=perMachine /
  MajorUpgrade AllowDowngrades=no AllowSameVersionUpgrades=yes
    DowngradeErrorMessage=You can't downgrade 
 this
  application Schedule=afterInstallExecute MigrateFeatures=yes/

  MediaTemplate EmbedCab=yes /
  Feature Id=ProductFeature Title=SetupProjectTest
  Level=1
  ComponentGroupRef Id=ProductComponents /
  /Feature
  Property Id=PATHTOCOPY Secure=yes/Property
  Property Id=PATHTOCOPYTO Secure=yes/Property
  Binary Id='CustomAction'
  SourceFile=$(var.TestCustomAction.TargetDir)TestCustomAction.CA.dll
  /

  Property Id=PREVIOUSVERSIONSINSTALLED Secure=yes /
  Property Id='REINSTALLMODE' Value='amus'/
  Property Id='ServiceName' Value='Test Service Name 2'/
    Property Id='INSTANCEID' Value='I01'
  RegistrySearch Id=InstanceIdSearch Root=HKLM
  Key=Software\[Manufacturer]\[ProductCode]\$(var.ProductName32)
  Name=InstanceId Type=raw /
    /Property
  InstanceTransforms Property='INSTANCEID'
    Instance Id='I01' ProductCode='$(var.I01)'
  ProductName='I01'/
    Instance Id='I02' ProductCode='$(var.I02)'
  ProductName='I02