Solved

VB drive mapping script

Posted on 2008-10-13
6
742 Views
Last Modified: 2012-05-05
Hello All,
Thank you for assisting. I am looking for a visual basic script to map network drives. I would like the script to map drives regardless if there are currently mapped or not.

I've seen quite a few sets of generic scripts that call arrays and prompt user dialog messages... I would like a simple script to map drives (10 or more), and passively pass over existing drives should they already have a mapping.

My objective is to have this script run in place of my current .bat file, vb is needed for my AD integration. Is it possible for the script to not disconnect mapped drives, only to remap them???

Many thanks for your help,

J
0
Comment
Question by:sullivanr6
  • 3
  • 3
6 Comments
 
LVL 65

Expert Comment

by:RobSampson
ID: 22707123
>> Is it possible for the script to not disconnect mapped drives, only to remap them???
No.  For a drive letter to be re-mapped to another location, it must first be disconnected.

This script will do that for you.

Regards,

Rob.
Set objDict = CreateObject("Scripting.Dictionary")
objDict.Add "G:", "\\server\share\gshare"
objDict.Add "H:", "\\server\share\hshare"
objDict.Add "I:", "\\server\share\ishare"
objDict.Add "J:", "\\server\share\jshare"
objDict.Add "K:", "\\server\share\kshare"
objDict.Add "L:", "\\server\share\lshare"
objDict.Add "M:", "\\server\share\mshare"
 
Set objNetwork = CreateObject("WScript.Network")
' Disconnect all drives first
For Each strDrive In objDict
	objNetwork.RemoveNetworkDrive strDrive, True, True
Next
' Map the drives
For Each strDrive In objDict
	objNetwork.MapNetworkDrive strDrive, objDict(strDrive), False
Next

Open in new window

0
 
LVL 3

Author Comment

by:sullivanr6
ID: 22707263
thank you for your prompt reply Rob,

The script you wrote has failed on line "objNetwork.RemoveNetworkDrive strDrive, True, True"
...as i understand the error message it failed because the drives that I am trying to map are not currently in use.

This script needs to map new and "remap" existing drives.

Thank you for your help,

Jason
0
 
LVL 65

Accepted Solution

by:
RobSampson earned 125 total points
ID: 22707392
Oh whoop!  Yeah, forgot to check if the drive already exists.....

This will map all drives, whether they were mapped or not....

Regards,

Rob.
Set objDict = CreateObject("Scripting.Dictionary")
objDict.Add "G:", "\\server\share\gshare"
objDict.Add "H:", "\\server\share\hshare"
objDict.Add "I:", "\\server\share\ishare"
objDict.Add "J:", "\\server\share\jshare"
objDict.Add "K:", "\\server\share\kshare"
objDict.Add "L:", "\\server\share\lshare"
objDict.Add "M:", "\\server\share\mshare"
 
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objNetwork = CreateObject("WScript.Network")
' Disconnect all drives first
For Each strDrive In objDict
	If objFSO.DriveExists(strDrive) = True Then objNetwork.RemoveNetworkDrive strDrive, True, True
Next
' Map the drives
For Each strDrive In objDict
	objNetwork.MapNetworkDrive strDrive, objDict(strDrive), False
Next

Open in new window

0
Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

 
LVL 3

Author Comment

by:sullivanr6
ID: 22707513
success. thank you.

regards,

Jason
0
 
LVL 3

Author Closing Comment

by:sullivanr6
ID: 31505699
thanks for your help.
0
 
LVL 65

Expert Comment

by:RobSampson
ID: 22707529
No problem .  Thanks for the grade.

Regards,

Rob.
0

Featured Post

Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

Question has a verified solution.

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

This script will sweep a range of IP addresses (class c only, 255.255.255.0) and report to a log the version of office installed. What it does: 1.)      Creates log file in the directory the script is run from (if it doesn't already exist) 2.)      Sweep…
Over the years I have built up my own little library of code snippets that I refer to when programming or writing a script.  Many of these have come from the web or adaptations from snippets I find on the Web.  Periodically I add to them when I come…
This Micro Tutorial will give you a basic overview how to record your screen with Microsoft Expression Encoder. This program is still free and open for the public to download. This will be demonstrated using Microsoft Expression Encoder 4.
Although Jacob Bernoulli (1654-1705) has been credited as the creator of "Binomial Distribution Table", Gottfried Leibniz (1646-1716) did his dissertation on the subject in 1666; Leibniz you may recall is the co-inventor of "Calculus" and beat Isaac…

805 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