I am using InstallShield 11 (within AdminStudio 10). I have created an InstallScript Project and I want to know how I call an .MSI file. I have added my Orca.msi file to Files\Folders location and installed it to c:\windows\system32 which is what I want to call with msiexec. The following line of code does not work.

LaunchApplication(SystemFolder ^ "msiexec.exe", "c:\windows\orca.msi /i REBOOT=R /QB+", "", SW_NORMAL, 1000, LAAW_OPTION_SHOW_HOURGLASS);

But, if I install an .EXE to the Language Independent location and run this command it Does work.

LaunchApplication(SUPPORTDIR ^ "test1.exe", "", "", SW_NORMAL, 1000, LAAW_OPTION_SHOW_HOURGLASS);

So I am not seeing how to call the msiexc and pass it the .MSI and switches.

Any help would be nice.
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
I have no idea regarding IS but:

I have added my Orca.msi file to Files\Folders location and installed it to c:\windows\system32
LaunchApplication(SystemFolder ^ "msiexec.exe", "c:\windows\orca.msi /i REBOOT=R /QB+", "", SW_NORMAL, 1000, LAAW_OPTION_SHOW_HOURGLASS);
Answered 04/26/2011 by: AngelD
Red Belt

Please log in to comment
0
Within InstallShield 11, on the Installation Designer Page I went to Application Data\Files and Folders. There I added/installed Orca.msi. Then, under Behavior and Logic I go to InstallScript. There I have this.

function OnFirstUIAfter()
STRING szTitle, szMsg1, szMsg2, szOpt1, szOpt2;
NUMBER bvOpt1, bvOpt2;
begin
LaunchApplication(SystemFolder ^ "msiexec.exe", "/i orca.msi /i REBOOT=R /QB+", "", SW_NORMAL, 1000, LAAW_OPTION_SHOW_HOURGLASS);
end;

I compile this into a single .EXE. When I run this Orca.msi does get installed to the C:\windows\system32 folder but it never gets launced or run.
Answered 04/26/2011 by: mhsl808
Fifth Degree Brown Belt

Please log in to comment
0
why do you have 2 /i ?

"/i orca.msi /i REBOOT...
Answered 04/27/2011 by: kardock
Second Degree Green Belt

Please log in to comment
0
sorry, that was a typo. There is only 1 /i.
Answered 04/27/2011 by: mhsl808
Fifth Degree Brown Belt

Please log in to comment
0
and it should be before the msi file

msiexec /i msifile /qb
Answered 04/27/2011 by: kardock
Second Degree Green Belt

Please log in to comment
0
I got this working. Here is the working command line that InstallShield 11 likes.

LaunchApplication("msiexec.exe", "/i " + SUPPORTDIR^"Orca.msi" + " /qn REBOOT=R", "", SW_NORMAL, INFINITE, LAAW_OPTION_WAIT | LAAW_OPTION_USE_SHELLEXECUTE);
Answered 04/27/2011 by: mhsl808
Fifth Degree Brown Belt

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