Via VBScript custom action:
' open the MSI database of external package
Set installer = CreateObject("WindowsInstaller.Installer")
path = Session.Property("SETUPEXEDIR") & "\name.msi"
Set database = installer.OpenDatabase(path, msiOpenDatabaseModeDirect)
' setting new product code
newProductCode = GetNewGUID()
insertQuery = "UPDATE `Property` SET `Value` = '" & newProductCode & "'
WHERE `Property` = 'ProductCode'"
Set insertView = database.OpenView(insertQuery)
insertView.Execute
insertView.Close
' changing the package code
set info = database.SummaryInformation(20)
info.Property(9) = GetNewGUID()
info.Persist
' changing components' IDs
ChangeComponentID "WebSite", database
ChangeComponentID "MSSQLDatabases", database
' etc.
' making the changes persistent
database.Commit
Whereas the ChangeComponentID is defined as follows:
'Helper function: changes the ID for a component
Function ChangeComponentID(componentName, database)
Dim newComponentID, insertQuery, insertView
newComponentID = GetNewGUID()
insertQuery = "UPDATE `Component` SET `ComponentId` = '" &
newComponentID & "' WHERE `Component` = '" & componentName & "'"
Set insertView = database.OpenView(insertQuery)
insertView.Execute
insertView.Close
End Function
Hope this helps.
-- Yan
________________________________
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Sent: Thursday, January 24, 2008 12:36 PM
To: Yan Sklyarenko; [EMAIL PROTECTED]
Cc: wix-users@lists.sourceforge.net
Subject: RE: [WiX-users] Wix multiple installs
Hi Yan
I wonder how did you 'patch' the second package with new Guid.
Daniel
________________________________
From: Yan Sklyarenko [mailto:[EMAIL PROTECTED]
Sent: 24 January 2008 10:32
To: Daniel Janz; Daniel Hatala
Cc: wix-users@lists.sourceforge.net
Subject: RE: [WiX-users] Wix multiple installs
I had the same problem once and here's how I solved it.
I split my installation project into 2 projects: the first one is a
so-called UI part, the second one is the main project and it actually
installs the product.
The UI part gathers the information from the user and the target system
as usual, then opens the MSI database of the target package, "patches"
it with new GUIDs, starts the main installation as msiexec /I
<list_of_public_properties> and silently closes itself. In such case
every time you install your product, from the system point of view it
launches a different MSI package each time.
I'm not sure if it is the way to go for your case and if it's at all the
WiX-like approach. But when I was searching for the solution to this
problem, this is the best advice I managed to get.
Hope this helps.
-- Yan
________________________________
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Daniel
Janz
Sent: Thursday, January 24, 2008 12:05 PM
To: [EMAIL PROTECTED]; wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] Wix multiple installs
I don't think that this is possible because of the GUIDs which would
have to be different every time you install the package.
Try to build an installer which copies the same files into different
locations instead.
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of
[EMAIL PROTECTED]
Sent: Donnerstag, 24. Januar 2008 10:39
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] Wix multiple installs
Hi
I am trying to create WIX install that could be installed multiple times
on one machine. To explain myself better I need to be able to install
the same application on one computer several times in different
locations (there is a good reason for this). Currently every time I
install new into a new location it uninstalls the application in the old
location and there is only one entry in the instaled application windows
(Add or Remove Programs) where I would like to have as many entries as
installed applications.
I wonder if its possible to do it and if anyone knows how I would
appreciate any hints.
Regards
Daniel
========================================================================
================================================
The information contained in this email is intended only
for the individual to whom it is addressed. It may contain
privileged and/or confidential information. If you have
received this message in error please notify the sender
immediately and delete the message from your computer. The
unauthorised use, disclosure, copying or alteration of this
message is forbidden. Neither Vertex Data Science Limited
nor any of its subsidiaries will be liable for direct,
special, indirect or consequential damage as a result of
any virus being passed on, or arising from alteration of
the contents of this message by a third party.
The following Vertex companies are registered in England
and Wales and are authorised and regulated by the Financial
Services Authority: Vertex Data Science Limited
(company number 3153391); Exchange FS Limited
(company number 2596452) trading as The Exchange; Vertex
Mortgage Services Limited (company number 2042968); Vertex
Administration Limited (company number 2138853); Jessop
Fund Managers Limited (company number 5768993). All the
above companies have their registered office at Pegasus
House, Kings Business Park, Liverpool Road, Prescot,
Merseyside, L34 1PJ.
www.vertex.co.uk
========================================================================
================================================
========================================================================
================================================
The information contained in this email is intended only
for the individual to whom it is addressed. It may contain
privileged and/or confidential information. If you have
received this message in error please notify the sender
immediately and delete the message from your computer. The
unauthorised use, disclosure, copying or alteration of this
message is forbidden. Neither Vertex Data Science Limited
nor any of its subsidiaries will be liable for direct,
special, indirect or consequential damage as a result of
any virus being passed on, or arising from alteration of
the contents of this message by a third party.
The following Vertex companies are registered in England
and Wales and are authorised and regulated by the Financial
Services Authority: Vertex Data Science Limited
(company number 3153391); Exchange FS Limited
(company number 2596452) trading as The Exchange; Vertex
Mortgage Services Limited (company number 2042968); Vertex
Administration Limited (company number 2138853); Jessop
Fund Managers Limited (company number 5768993). All the
above companies have their registered office at Pegasus
House, Kings Business Park, Liverpool Road, Prescot,
Merseyside, L34 1PJ.
www.vertex.co.uk
========================================================================
================================================
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users