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

Reply via email to