How to run a VBS script before deploying Package

Posted on 2008-10-29
Last Modified: 2013-11-21
I have a simple VBS script (copies a file on the network to a local client - easy stuff) and want this script to run right before or after the package installs.  This script can only be run for a specific package, and I don't care if it runs before or after the package installs.  

Under 'program properties' for the program, on the 'Advanced' tab is an option to 'Run Another Program First.'  I can select a package, but how can I make a package out of a VBS script?  Do I just create a new package with 'xxx.vbs' in the CMD line, and no switches?  Run as hidden?
Question by:NBquery
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
  • 2
  • 2
LVL 18

Expert Comment

ID: 22836610
What you need to do is create another package in SMS for your VBS script, yes run Hidden. On your other package you have created just like you said in the Program properties for that program, on the Advanced tab, check the "Run another program first". Then right under that, click on the drop down botton on the right side of Package and select the package you created for the VBS script. That's all you need. When you deploy your program package, it will run the VBS first then the program installation of your package.

Author Comment

ID: 22837639
Well, I got the package created in SMS, but it doesn't seem to be working.  I have it set as 'Hidden' and in the CMD line of the program:

There are no switches or arguments on the CMD line, just the vbs name.  Is there something else I ned to include on the CMD line?  The status manager is reporting a successful install, but its not doing anything.

Accepted Solution

DecKen earned 250 total points
ID: 22838863
try changing the command line of your VB script package to
cscript script.vbs
Office 365 Training for IT Pros

Learn how to provision tenants, synchronize on-premise Active Directory, implement Single Sign-On, customize Office deployment, and protect your organization with eDiscovery and DLP policies.  Only from Platform Scholar.

LVL 18

Expert Comment

ID: 22840425
Won't hurt to try cscript...
btw, did you just type the script.vbs in the command line when configuring the package? If so, make sure you use browse to find the script.vbs instead of manually typing it in. Where ever the path of this script.vbs, try run it from the path manually from your SMS server to verify it is working through the path and security, assuming the account you use also have the same permission as the SMS Admin account you use that have access to all servers resources. Also, you can change the Hidden to Maximized to see if it's doing anything.

Author Comment

ID: 22864587
Weill, that's not working really.  I ran the script on the sms server and it copied the file I specified in the script from the remote server, to the local Windows directory.

Not sure whats going wrong.  He is the vb script I'm using:

DIM objFSO, sFile, strComputer
'On Error Resume Next
set objFSO=createobject("scripting.FilesystemObject")
'if objFSO.fileexists(sFile)=true then
  objFSO.CopyFile "\\dcdfs11\AllAccess\logon.ini", "c:\windows\"
'End if

Can anyone see a issue with the above script, whats causing it to flake out on me?  I have tried setting the package CMD line to 'cscript script.vbs' and also 'script.vbs' on its own.

Expert Comment

ID: 22865292
When you run the script via SMS by default its going to use the system account unless you set it to run as a different account.
Check the access to \\dcdfs11\AllAccess\logon.ini does everyone have access to the file?

Author Comment

ID: 22866926
Yes, everyone at the company has read access to that directory.  SMS is running the program with Administrator rights.

Author Closing Comment

ID: 31511246
Unfortunately, this script did not run but we cannot tell if its due to SMS or our networking environment.  Still pretty good suggestion.

Featured Post

Transaction Monitoring Vs. Real User Monitoring

Synthetic Transaction Monitoring Vs. Real User Monitoring: When To Use Each Approach? In this article, we will discuss two major monitoring approaches: Synthetic Transaction and Real User Monitoring.

Question has a verified solution.

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

Welcome to my series of short tips on migrations. Whilst based on Microsoft migrations the same principles can be applied to any type of migration. My first tip Migration Tip #1 – Source Server Health can be found listed in my profile here: http:…
Welcome to my series of short tips on migrations. Whilst based on Microsoft migrations the same principles can be applied to any type of migration. My first tip Migration Tip #1 – Source Server Health can be found here: http://www.experts-exchang…
Come and listen to Percona CEO Peter Zaitsev discuss what’s new in Percona open source software, including Percona Server for MySQL ( and MongoDB (…
Monitoring a network: why having a policy is the best policy? Michael Kulchisky, MCSE, MCSA, MCP, VTSP, VSP, CCSP outlines the enormous benefits of having a policy-based approach when monitoring medium and large networks. Software utilized in this v…

707 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