Solved

VB Script mapping network drives

Posted on 2008-10-21
6
431 Views
Last Modified: 2010-04-21
hello,

i have a vb script that uninstalls an older version of a software product and then installs a new version of the software product. however, after installation i need to call a batch file that resides on a network drive. i cannot figure out how to map the drive call the file and then delete the mapping. any insight would be appreciated. attached a my script. thanks in advance.

chaz.
'Create command shell

Set WshShell = CreateObject("WScript.Shell")
 

'Uninstall previous versions of FileSite

WshShell.Run "msiexec /x {ABD11761-F3F5-421D-8726-5CCEEE333AA8} /q",1,true

WshShell.Run "msiexec /x {67F84002-C577-41C7-8F02-682A7797EE16} /q",1,true
 

'Install new version of FileSite

WshShell.Run "msiexec.exe /i ""\\archive\archive\software\Interwoven\FileSite 8.2 SP1 P3a\Full_Installer\Interwoven FileSite 8.2 SP1.msi"" /qn SERIALNUMBER=""xxx-xxx"" ", 1, true

Open in new window

0
Comment
Question by:chaz21
6 Comments
 
LVL 5

Expert Comment

by:lecaf
ID: 22770979

why use VBS?

go for a plain batch

and you can the use the pushd and popd commands
PUSHD will create a temporary drive letter that points to that specified network resource and then change the current drive and directory, using the newly defined drive letter

you could also use em with shell run but Iit would be bizzare.

m  a  r  c .
0
 
LVL 8

Accepted Solution

by:
MatthiasVance earned 500 total points
ID: 22771049
I provided some example code.

Kind regards,

Matthias Vance
Dim oNet

Set oNet = CreateObject("WScript.Network")

oNet.MapNetworkDrive "H:", "\\server\path"

' Your code here

oNet.RemoveNetworkDrive "H:"

Open in new window

0
 
LVL 65

Expert Comment

by:RobSampson
ID: 22771096
Hi, you should be able to run your batch file directly from the UNC path without having to map a network drive....

Try this.

Regards,

Rob.
'Create command shell

Set WshShell = CreateObject("WScript.Shell")

 

'Uninstall previous versions of FileSite

WshShell.Run "msiexec /x {ABD11761-F3F5-421D-8726-5CCEEE333AA8} /q",1,true

WshShell.Run "msiexec /x {67F84002-C577-41C7-8F02-682A7797EE16} /q",1,true

 

'Install new version of FileSite

WshShell.Run "msiexec.exe /i ""\\archive\archive\software\Interwoven\FileSite 8.2 SP1 P3a\Full_Installer\Interwoven FileSite 8.2 SP1.msi"" /qn SERIALNUMBER=""xxx-xxx"" ", 1, True
 

'Run the batch file

strBatch = "\\server\share\MyBatch.bat"

WshShell.Run strBatch, 1, True

Open in new window

0
Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

 

Author Comment

by:chaz21
ID: 22771205
thanks for responding so quickly  !! ill give these suggestions a try and report back asap.
0
 

Author Comment

by:chaz21
ID: 22798078
attached is my script that is working just the way i intended !!   it runs perfectly when i initiate it on the local machine as admin.  now my next step is to get my sms package to run this on all the clients on our network. i created an sms package that calls the same script and it fails. anyone have any sms experience ?
 
'Create command shell

Set WshShell = CreateObject("WScript.Shell")
 

'Uninstall previous versions of FileSite

WshShell.Run "msiexec /x {ABD11761-F3F5-421D-8726-5CCEEE333AA8} /q",1,true

WshShell.Run "msiexec /x {67F84002-C577-41C7-8F02-682A7797EE16} /q",1,true
 

'Install new version of FileSite

WshShell.Run "msiexec.exe /i ""\\archive\archive\software\Interwoven\FileSite 8.2 SP1 P3a\Full_Installer\Interwoven FileSite 8.2 SP1.msi"" /qn SERIALNUMBER=""xxxx-xxxx"" ", 1, true
 

' Map a network drive to a UNC Path and then call reg.bat which imports registry setting to collapse filesite tree when opening 

Dim oNet

Set oNet = CreateObject("WScript.Network")

oNet.MapNetworkDrive "Z:", "\\server\share"

wscript.sleep 3000

WshShell.Run ("z:\reg.bat")

wscript.sleep 5000

oNet.RemoveNetworkDrive "Z:"

Open in new window

0
 

Author Closing Comment

by:chaz21
ID: 31508480
this worked very well .  i did have to add a few wscript.sleep statements to allow the program to execute before the mapping was disconnected. thanks again for everyones input !
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

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

I was working on a PowerPoint add-in the other day and a client asked me "can you implement a feature which processes a chart when it's pasted into a slide from another deck?". It got me wondering how to hook into built-in ribbon events in Office.
Whether you’re a college noob or a soon-to-be pro, these tips are sure to help you in your journey to becoming a programming ninja and stand out from the crowd.
The goal of the video will be to teach the user the concept of local variables and scope. An example of a locally defined variable will be given as well as an explanation of what scope is in C++. The local variable and concept of scope will be relat…
The viewer will learn how to clear a vector as well as how to detect empty vectors in C++.

895 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

Need Help in Real-Time?

Connect with top rated Experts

13 Experts available now in Live!

Get 1:1 Help Now