Solved

I need a VBscript to run an msi after clicking on an ok button.

Posted on 2009-05-08
5
773 Views
Last Modified: 2013-11-14
I need a VBscript to run an msi after clicking on an ok button.  I need our users to see a message that will inform them to close a program before they click an ok button and install runs.  I have the msi working but I am just learning VB scripting.  Thanks.
0
Comment
Question by:automaton64
[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
  • 2
  • 2
5 Comments
 
LVL 13

Expert Comment

by:Brum07
ID: 24336722
See below

replace the notepad.exe with your setup exe
option explicit
on error resume next
Msgbox "Your Message"
Dim WshShell
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "c:\windows\system32\notepad.exe"

Open in new window

0
 
LVL 13

Expert Comment

by:Brum07
ID: 24336740
to run the MSi you can use the below;

WshShell.Run "c:\windows\system32\msiexec /i ""program.msi"" /qn"
0
 

Author Comment

by:automaton64
ID: 24338865
This is great.  Thank you. However, when I am testing it out with my msi which uses a transform file nothing seems to happen after the message window.  Here is what I am trying.
option explicit
on error resume next
Msgbox "Your Message"
Dim WshShell
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "C:\ln85\msiexec /i ""Lotus Notes 8.5.msi"" TRANSFORMS=""Lotus Notes 8.5.mst"""

Open in new window

0
 
LVL 12

Accepted Solution

by:
zoofan earned 250 total points
ID: 24341494
Copy and paste into notepad

Edit line 8 to the name of the app to close
Edit line 9 to the full command line for the msi install

save as filename.vbs

run it.


zf
Option Explicit
	Dim WshShell
	Dim Intresult
	Dim strAppName	
	Dim strCommand
 
 
strAppName = "TheApptoClose" ' edit thename of the app you want the user to close.
strCommand = "msiexec.exe /i \\server\share\NameOf.msi" 'edit to the command line to execute the msi.
 
		Intresult = MsgBox("Please close " & strAppName & " before installing this application.",vbOKCancel,"MSI installation")
 
		If Intresult = vbOK Then
			Set WshShell = WScript.CreateObject("WScript.Shell")
			WshShell.Run strCommand,1,True
		Else
			MsgBox "The installation has been cancelled",vbOKOnly,"MSI Installation"	
		End If
WScript.Quit(0)

Open in new window

0
 

Author Closing Comment

by:automaton64
ID: 31579478
Yes.  This is just what I need. Thank you.
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

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

I have been scripting applications way too long and can never remember how to create an ISS file.  So I decided to write this article to act as my own knowledge base for future reference, and hope you will also benefit. An ISS file is a response …
This article is the result of a quest to better understand Task Scheduler 2.0 and all the newer objects available in vbscript in this version over  the limited options we had scripting in Task Scheduler 1.0.  As I started my journey of knowledge I f…
A short tutorial showing how to set up an email signature in Outlook on the Web (previously known as OWA). For free email signatures designs, visit https://www.mail-signatures.com/articles/signature-templates/?sts=6651 If you want to manage em…

738 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