?
Solved

MSIEXEC not executing working script at CustomAction point

Posted on 2008-06-23
4
Medium Priority
?
1,096 Views
Last Modified: 2013-11-26
Hi Folks,

I have a need to install multiple packages, each wrapped in .MSI files.  I could create a batch file that executes each from CD but would prefer to use a single .MSI file to install all three.  My understanding was that I could add the three .MSI files into the application folders then run a Custom Action (after commit), in this case a .vbs that executes MSIExec, to silently install the apps.

The issue I'm having, however, is that while the script runs - I've tested with displaying a msgbox - the MSIEXEC command does nothing at all.  The file extracts into the correct folder and the script is also there.  I've tried logging outputs, etc, but it just seems to do nothing.  I ought to mention as well that outside of the MSI wrapper the script runs as expected.  The script is as follows:

Help would be appreciated.

Thanks,

Jes
option explicit
on error resume next
Dim WshShell
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "msiexec /i ""TestApplicationForInstall_MSI.msi"" /qf"

Open in new window

0
Comment
Question by:JesGoth
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
4 Comments
 
LVL 40

Accepted Solution

by:
Vadim Rapp earned 800 total points
ID: 21846768
> I could add the three .MSI files into the application folders then run a Custom Action

It's bad idea. See http:Q_23498090.html for details.

As for vbscript, I would specify full path to the msi file in WshShell.Run  . You can run filemon (from sysinternals.com) to see if your msi file is actually opened.
0
 
LVL 16

Assisted Solution

by:ThinkPaper
ThinkPaper earned 600 total points
ID: 21876828
in addition to vadimrapp1's comments, when running this line, eliminate the /qf switch and run a test on your machine. Does it pop up the install on your machine?

WshShell.Run "msiexec /i ""\\server\install\TestApplicationForInstall_MSI.msi"" "

0
 
LVL 2

Assisted Solution

by:smilingpolitely
smilingpolitely earned 600 total points
ID: 21882868
The simple answer is that you can't run a nested MSI in that way.  The only way to run a nested Windows Installer package is using Custom Actions 7, 23 or 39.  Otherwise, the second installer sees another install is in process and fails.

Not only that, these features have been deprecated from the Windows Installer API.  

http://msdn.microsoft.com/en-us/library/aa368010(VS.85).aspx
0
 

Author Closing Comment

by:JesGoth
ID: 31469749
Thanks to all, hope you're happy with me splitting the points.
0

Featured Post

Use Filtering Commands to Process Files in Linux

Learn how to manipulate data with the help of various filtering commands such as `cat`, `fmt`, `pr`, and others in Linux.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article describes relatively difficult and non-obvious issues that are likely to arise when creating COM class in Visual Studio and deploying it by professional MSI-authoring tools. It is assumed that the reader is already familiar with the cla…
Create a Windows 10 custom Image with custom task bar and custom start menu using XML for deployment.
Michael from AdRem Software outlines event notifications and Automatic Corrective Actions in network monitoring. Automatic Corrective Actions are scripts, which can automatically run upon discovery of a certain undesirable condition in your network.…
In this video, Percona Director of Solution Engineering Jon Tobin discusses the function and features of Percona Server for MongoDB. How Percona can help Percona can help you determine if Percona Server for MongoDB is the right solution for …
Suggested Courses

800 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question