Page 1 of 1

Side by Side installation

Posted: Mon Oct 18, 2010 9:07 am
by bhaiwal
I have created setup for a game (say, "A"), and it works fine for years. Now, we have created another game (say, "B").

My Problem is:

1. Now, I want to create another Setup for this another game. I copied the existing InstallAware project to create new one, customized the Installation-Folders and all, and created the installer successfully. I also have changed the Product-Code and Revision-Code (GUIDs). Now, my problem is:
i) I can install game "B", without Game "A" on the machine
ii) I can install game "A", when game "B" is already there. And both runs side-by-side, very fine. (One installation does not and shouldn't uninstall other installation, as these two are different games, with different Product-GUID)
iii) When Game "A" is already installed on the machine, and I try to install game, "B", it shows blank MsgBox, on the "Processing" screen, with title, "Error" and "Ok" button, without any msg.

What am I doing wrong? What should I do?

pl. help!

Re: Side by Side installation

Posted: Mon Oct 18, 2010 2:22 pm
by mills
Can you post logs for the failing install? From command line:

setup.exe /l=C:\log.txt

(use full log path, not like /l=log.txt)

Re: Side by Side installation

Posted: Tue Oct 19, 2010 7:46 am
by bhaiwal
Thanks for reply.

The partial log, that appears at the end of the Log-file is: (That seems related to the error)

Property(S): StartMenuFolder = C:\Documents and Settings\All Users\Start MenuProperty(S): DesktopFolder = C:\Documents and Settings\All Users\DesktopProperty(S): FontsFolder = C:\WINDOWS\FontsProperty(S): GPTSupport = 1
Property(S): OLEAdvtSupport = 1
Property(S): ShellAdvtSupport = 1
Property(S): Intel = 6
Property(S): PhysicalMemory = 2039
Property(S): VirtualMemory = 3385
Property(S): AdminUser = 1
Property(S): LogonUser = amruta
Property(S): UserSID = S-1-5-21-1547161642-1958367476-839522115-1003
Property(S): UserLanguageID = 1033
Property(S): ComputerName = AMRUTA-LAPTOP
Property(S): SystemLanguageID = 1033
Property(S): ScreenX = 1366
Property(S): ScreenY = 768
Property(S): CaptionHeight = 26
Property(S): BorderTop = 1
Property(S): BorderSide = 1
Property(S): TextHeight = 16
Property(S): ColorBits = 32
Property(S): TTCSupport = 1
Property(S): Time = 13:06:43
Property(S): Date = 10/19/2010
Property(S): MsiNetAssemblySupport = 2.0.50727.3053
Property(S): MsiWin32AssemblySupport = 5.1.2600.2180
Property(S): RedirectedDllSupport = 2
Property(S): Privileged = 1
Property(S): DATABASE = C:\WINDOWS\Installer\228efc.msi
Property(S): OriginalDatabase = C:\DOCUME~1\amruta\LOCALS~1\Temp\mia2\Path_change_Secretariat_Combine_10.900500_1.msi
Property(S): MsiUISourceResOnly = 1
Property(S): Preselected = 1
Property(S): ACTION = INSTALL
=== Logging stopped: 10/19/2010 13:06:44 ===
MSI (s) (90:28) [13:06:44:015]: Note: 1: 1708
MSI (s) (90:28) [13:06:44:031]: Note: 1: 2205 2: 3: Error
MSI (s) (90:28) [13:06:44:062]: Note: 1: 2228 2: 3: Error 4: SELECT `Message` FROM `Error` WHERE `Error` = 1708
MSI (s) (90:28) [13:06:44:078]: Note: 1: 2205 2: 3: Error
MSI (s) (90:28) [13:06:44:109]: Note: 1: 2228 2: 3: Error 4: SELECT `Message` FROM `Error` WHERE `Error` = 1709
MSI (s) (90:28) [13:06:44:125]: Product: Secretariat Game -- Installation failed.

MSI (s) (90:28) [13:06:44:156]: Cleaning up uninstalled install packages, if any exist
MSI (s) (90:28) [13:06:44:171]: MainEngineThread is returning 1603
MSI (s) (90:F8) [13:06:44:203]: Destroying RemoteAPI object.
MSI (s) (90:8C) [13:06:44:234]: Custom Action Manager thread ending.
MSI (c) (D8:64) [13:06:44:265]: Decrementing counter to disable shutdown. If counter >= 0, shutdown will be denied. Counter after decrement: -1
MSI (c) (D8:64) [13:06:44:296]: MainEngineThread is returning 1603
=== Verbose logging stopped: 10/19/2010 13:06:44 ===

Re: Side by Side installation

Posted: Tue Oct 19, 2010 7:28 pm
by mills
I wasn't able to find much on the 1709 error, but it looks like you might want to try running msizap.exe to clear things up:
http://msdn.microsoft.com/en-us/library ... 85%29.aspx

Alternatively, you may want to search registry for the product names and product code {GUIDs}, removing them...

I would be interested in testing the installers on our test environment.

You could post just the installers or the projects for the two (or just the project for the second might be enough to test with and the first installer).

You could post here or email support@installaware.com with zipped versions or a link...

Re: Side by Side installation

Posted: Wed Oct 20, 2010 11:30 pm
by mills
The problem is the upgrade codes are the same between the two installers.

You can change the upgrade code In your project properties:

upgrade_code.JPG
upgrade_code.JPG (44.26 KiB) Viewed 17370 times


Just use the revision code, then regenerate a new revision code.

Re: Side by Side installation

Posted: Wed Oct 20, 2010 11:48 pm
by mills
Here's a picture of the "blank error":

error.png
error.png (10.23 KiB) Viewed 17370 times


And the final page reported:

$TITLE$ installation failed: "Fatal error during installation". Please check your settings and try again.

Re: Side by Side installation

Posted: Thu Oct 21, 2010 7:31 am
by bhaiwal
Thanks Mills, but unfortunately this didn't resolve my issue!

I already had changed Product-Code and Revision-Code (as they call it in InstallAware7-R2), before I posted this issue on this forum.

I again, regenerated both the GUIDs (Product & Revision), after reading your reply and retried, but the problem continues, as it was!

Any further clue?

Pl. help.

Re: Side by Side installation

Posted: Thu Oct 21, 2010 7:34 am
by mills
Yes, your product and revision codes do differ and that is not the problem. The problem is the UPGRADE CODE is not different. You have to access the upgrade code through the project settings:

Project_Settings.jpg
Project_Settings.jpg (186.93 KiB) Viewed 17365 times

Re: Side by Side installation

Posted: Fri Oct 22, 2010 12:56 am
by bhaiwal
Thank you very much, Andy! This resolved my issue!

Thanks a lot again!

Re: Side by Side installation

Posted: Sun Jan 30, 2011 9:19 pm
by BobRoush
Halleluiah. I've hit this "blank" error intermittently for 2-3 years now. Spent hours on it before and was never able to resolve the problem. Before I was always able to tell my users - don't do that. Today I found myself in a situation where I could not tell them, don't do that. I've spent hours debugging, then found this thread after looking at a couple of others that did not look promising.
Thanks, thanks, thanks. :D

Re: Side by Side installation

Posted: Mon Jan 31, 2011 1:20 pm
by giaviv
Dear BobRoush,

Great! As you can see, there forums are a wonderful resource for help.

Re: Side by Side installation

Posted: Thu Jan 23, 2014 7:01 am
by kishorkk23
Hi ,
I am planning to support multiple installation for our current software and have added the code described in the forum, or sample multiple project.

Code: Select all

~InstallAware Clipboard Data~
~Code Folding Region~
~{175E4F96-AFD1-4B81-BC6F-AF9BF664242C}~
~FALSE~
~Copy of Copy of Copy of Copy of Copy of ~
~End~
~{51B04450-316F-4EA9-BC06-869C58504593}~
~Comment~
~{BA486D28-162E-4065-9A4D-EA2EC544B642}~
~~
~End~
~{C69E9FEC-A11E-42B1-A5AF-102A39B2F7B8}~
~Terminate Install~
~{84F31A14-5528-4C37-99B8-55CEE02EF4BB}~
~If~
~{3FB3B660-B742-4792-AA71-B76C0EBA4049}~
~TRANSFORM~
~0~
~CANCEL~
~FALSE~
~End~
~{FA60D354-A84A-4975-884E-C390B9939858}~
~Replace String~
~{0EAC5537-8241-4C24-8A9A-25C8030070F6}~
~TITLE~
~/~
~-~
~TRUE~
~TRUE~
~Replace String~
~{E4B6AEA3-B90C-43BC-A5DC-133101DB0E76}~
~TITLE~
~:~
~-~
~TRUE~
~TRUE~
~Comment~
~{C11E6964-3BBE-4411-AF9F-EF7B1ABA32B0}~
~The TITLE variable should represent a legal file name~
~Comment~
~{97DBD740-52B8-4DBE-BACF-C83B55527BEB}~
~~
~Comment~
~{8A474227-5EC0-4B19-AA6A-AAAA2368E5EB}~
~Note: If the TITLE variable is not unique for each instance, old instances may be orphaned~
~Set Variable~
~{A37ADFB7-D583-40AC-89D2-DD5F533AAA18}~
~TITLE$MYAH$MYAH$FALSE~
~$TITLE$~
~Comment~
~{4ED20733-E615-435E-8AA0-E42A4C6515B4}~
~Each spawned instance is identified in the Control Panel Add-Remove Programs applet by its name~
~Comment~
~{0D896608-ED32-480C-A379-EE18B6C15153}~
~Update the TITLE variable to hold the name of the new spawned instance~
~Comment~
~{BD41DB53-224B-438B-B346-D5CE112D5A52}~
~~
~Comment~
~{26A0A304-2B7B-402B-80F5-83C887C783C0}~
~Note: This command has no effect if NEWINSTANCE is FALSE~
~Comment~
~{789D3E6C-8D90-4B9B-8A23-A880AD21C437}~
~The running script now represents a new instance of the product and can be installed as a fresh copy~
~Transform Instance~
~{45548124-AAB1-4BBC-A0A7-D8FE7DDD7BBF}~
~Comment~
~{734378AA-D0F1-474F-9E75-A55BD1D23D59}~
~Spawn a new instance using the Transform Instance command~
~Comment~
~{2C7F9E3A-57C1-4046-87EF-5C244B5BB508}~
~~
~If~
~{AED51EF6-B98B-4492-B73F-69B474B5070A}~
~TRANSFORM~
~0~
~YES~
~FALSE~
~MessageBox~
~{F6BE4749-F3DE-4AF0-8C3C-F9E7BADA0161}~
~$TITLE$ Setup~
~$TITLE$ is already installed on this computer.$NEWLINE$$NEWLINE$Would you like to install a new copy of $TITLE$?$NEWLINE$$NEWLINE$Click YES to install a new instance of $TITLE$.$NEWLINE$Click NO to update the default instance of $TITLE$.$NEWLINE$Click CANCEL to exit $TITLE$ Setup.$NEWLINE$$NEWLINE$To modify other instances of $TITLE$, use the Control Panel Add-Remove Programs icon.~
~1~
~5~
~TRANSFORM~
~Comment~
~{2DF03534-67E5-42BA-BBC3-DCC028144494}~
~~
~If~
~{C19D285E-AA40-4A92-85B7-2695EDB4054E}~
~NEWINSTANCE~
~0~
~TRUE~
~FALSE~
~Comment~
~{A3C01B7D-20C2-4F3F-90CF-7867731D5964}~
~The ARP applet is the only place to maintain and uninstall existing instances in a multi-instance scenario~
~Comment~
~{FD68E309-169A-49BB-8392-DC9A4F1C46EE}~
~New instances cannot be spawned when setup is started from the Control Panel Add-Remove Programs applet~
~Comment~
~{DEB8BA2D-49C8-4C5E-A5FF-7408DC46C45B}~
~New instances cannot be spawned until a first instance of the product has been installed~
~Comment~
~{A59C17EB-80DA-42CA-AC82-38B5E4289DFF}~
~The NEWINSTANCE variable holds TRUE if new instances may be spawned, FALSE otherwise~
~Comment~
~{7E6325EC-59FB-4C07-BE9B-31058A507422}~
~~
~Comment~
~{422D0B8B-AE6A-4FBD-AB0F-49CE5C925586}~
~You may copy-paste it into your existing setup scripts to add multi-instance behavior~
~Comment~
~{EFF35C5B-EF66-4679-B6DF-7C6C8B7EE814}~
~This self-contained region contains the entire logic to support multiple instances~
~Code Folding Region~
~{67C4211E-9CF2-416F-8613-5A2E4A516F66}~
~TRUE~
~Allow New Instances~


Plus I am also creating a new product key as well as the revision for every install.

The issue is similar to what is explained in this post. I was able to resolve the issue by changing the Upgrades with product code, as you showed in the snapshot.

---
My question is when we change a product code, this also should change, and why doesn't it change?
Is there a better way to support through script than manually changing this for every multiple install build?

Re: Side by Side installation

Posted: Thu Jan 23, 2014 12:57 pm
by FrancescoT
Dear kishorkk23,

it changes every time you create a new project, otherwise you must manually enter the wanted value.

Unfortunately, this value can't be handled as variable script.
It could maybe possible to assign it using a compiler variable (... I never tried) and you should manually enter its value anyway.

Regards

Re: Side by Side installation

Posted: Thu Jan 23, 2014 10:40 pm
by kishorkk23
Thanks. Can you let me know which compiler variable can i use for this? or how can i create multiple instances without getting the error mentioned in the post.

When we say multiple instances, each instance should be independent of each other, whether it is install-wise or uninstall-wise.

Is there any robust process where i can refer and create multiple instances which are totally independent of each other...

Re: Side by Side installation

Posted: Fri Jan 24, 2014 12:23 pm
by FrancescoT
Dear kishorkk23,

It doesn't exist any pre-defined variable ... you should define your own compiler variable for that.
As I said previously, I never tried to assign the UpgradeCode in this way ... so I am not sure that it can work.

If I haven't missed your question about multiple instances;
you could create several independent projects, each one with its PRODUCT and UPGRADE code.
Then you could embed all the generated setup packages with another installer project, where the user can select which package to install.

Regards