Hi,

Can any one tell me how to include a redistributable (exe which contains msi and a cab file) to the parent msi.
For now I added it as a prerequisite. So Now I had an X.exe which is launching my parent msi.
If I double click the X.exe, it is installing the redistributable and then continues to install the parent msi.
But the requirement is the final product should be an msi only.

Note: The redistributable is an exe which contains an msi
Please help me out with this.

Regards, WEK
0 Comments   [ + ] Show Comments

Comments

Please log in to comment

Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.

Answers

0
Well unless you have a license for Installshield or something like that the best you can do is make a batch file that calls the MSI. Fastest and easiest.
Answered 12/13/2007 by: Coriolus
Orange Belt

Please log in to comment
0
Extract the .MSI & .CAB file from the redistributable and execute them in the UI sequence in the "parent" MSI.
Answered 12/13/2007 by: AngelD
Red Belt

Please log in to comment
0
I wouldn't do it, but somebody posted a microsoft KB article yesterday about embedding MSIs. It's in this forum.

There are reasons it is not recommended by microsoft. Why can you not distribute as a separate package?
Answered 12/13/2007 by: aogilmor
Ninth Degree Black Belt

Please log in to comment
0
Hi WEK,
you won't never get happy with this.
The main problem is, that you can't have two MSI running at the same time.
Well almost, it works during the dialog sequence and after the InstallFinalize sequence.
The best way to do it, IMHO, would be to get a merge module of the redistributable and include it to the main installation.
Regards, Nick
Answered 12/13/2007 by: nheim
Tenth Degree Black Belt

Please log in to comment
0
Thanks for the reply,
I extracted the msi and cab file and placed them in a folder.
I created a two custom actions for installing and uninstalling the msi.
Placed the custom action in execute immediate, under costfinalize as
If NOT Installed then
Install MSI from Installation
End

when I compile and ran the installation getting the error as
Source file not found <path of the cab file>. verify the file exists and you can acces it.

I know its looking for the cab file but can any one tell me how to add a custom action to call for a cab file.

Thanks, WEK
Answered 12/13/2007 by: WEK76V
Senior Yellow Belt

Please log in to comment
0
Hi nheim,

I tried to solve this problem with the mergemodules but couldn't fix it.
I downloaded the mergemodules from the wise website but I couldn't get the mergemodules for that particular redistributable.
Here are some sample mergemodules for that redistributable.

ATL
X86 - Microsoft_VC80_ATL_x86.msm, policy_8_0_Microsoft_VC80_ATL_x86.msm

CRT
X86 - Microsoft_VC80_CRT_x86.msm, policy_8_0_Microsoft_VC80_CRT_x86.msm

MFC
X86 - Microsoft_VC80_MFC_x86.msm, policy_8_0_Microsoft_VC80_MFC_x86.msm

OpenMP
X86 - Microsoft_VC80_OpenMP_x86.msm, policy_8_0_Microsoft_VC80_OpenMP_x86.msm

MFCLOC
X86 - Microsoft_VC80_MFCLOC_x86.msm, policy_8_0_Microsoft_VC80_MFCLOC_x86.msm

Thanks, WEK
Answered 12/13/2007 by: WEK76V
Senior Yellow Belt

Please log in to comment
0
Hi WEK,
which one do you need exactly?
Regards, Nick
Answered 12/13/2007 by: nheim
Tenth Degree Black Belt

Please log in to comment
0
Hi Nick,
I am looking to install the vcredist_x86.exe along with my parent msi.

Regadrs, WEK
Answered 12/13/2007 by: WEK76V
Senior Yellow Belt

Please log in to comment
0
Hi Nick,

I tried this in a different way....
Added a custom action without a sequence, and called it from the Finish push button control, on the Finish dialog.
I did the following steps
To do it from the Finish dialog.
1. Added the "Execute Program" from Installed File action, to the All Custom action list.
Custom Action Name: Action
Executable File: <Name of the exe>
Command Line Arguments: 1
2. In the Finish dialog, double-click on the Finished button, and in the Events tab[/align]added a new event.[/align]Event: DoAction
Argument: Action
Condition: 1.
the installation is fine still the finish button appears, when I click the finish button getting the following error message
Command line option syntax error. Type Command /? for Help.

Any Ideas will be appreciated.
Regards, WEK
Answered 12/14/2007 by: WEK76V
Senior Yellow Belt

Please log in to comment
0
Hi WEK,
where did you set your action in the execution order of the finish button?
Back to the MM thing:
The 'vcredist.exe' is a collection of MM's itself. And the ones included are just about the ones you listed in post #6.
To see it yourself, extract the 'vcredist.msi' from the 'vcredist.exe' and load it in ORCA.
Then select the 'ModuleComponents' table and sort the it after the 'ModuleID' column.
Then do the same with the MSM' and you see that you are looking at the same module components.
Most likely, you don't need all of this redistributables. So identify the ones you need and include them in your package.
That's the real way to go, which isn't maybe the easiest one, but it is stable, working with silent installation and important: Vista-proof!
But believe me, you will get the time and effort, which you invest now, back multiple times in the future.
Regards, Nick
Answered 12/15/2007 by: nheim
Tenth Degree Black Belt

Please log in to comment
0
Hi Nick,

For the first one -- I did the below stuff
  1. Added the "Execute Program" from Installed File action, to the All Custom action list
  2. In the Finish dialog, double-click on the Finished button and in the Events.
  3. Added "DoAction," with the argument name of the custom action that I have added, condition set to 1.

For the seond one-- I know that Vcredist.exe is a collection of MM's itselt.
I have extracted the msi from exe but also got a cab file with the msi.
I tried to nested install with the extracted msi, but I am not sure howexactly I can call the cab file.
Regards, WEK
Answered 12/17/2007 by: WEK76V
Senior Yellow Belt

Please log in to comment
0
You can extract the msm from the msi, use wsi to do the conversion from msi - wsi and it would extract the msm's for you. Include the extracted msm in your package
Answered 12/17/2007 by: bheers
Second Degree Blue Belt

Please log in to comment
Answer this question or Comment on this question for clarity