VBS script multiple copy of files to Mapped Drives

Hello,

I am currently trying to copy one file to multiple drives using a VBS script I have the code for copy to one drive but would like to make it copy file to multiple at the same time. The drive letters that I am using are P > X

Any help would be greatly appreciated as I seem to be having a issue with this.. Thanks

I have attached current code as a example
Const OverwriteExisting = True
Set objFSO = CreateObject("Scripting.FileSystemObject")
objFSO.CopyFile "C:\test.exe" , "P:\", OverwriteExisting

Open in new window

ITCSHRPKAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Shift-3Commented:
This should do it.


Const OverwriteExisting = True
 
For i = 80 To 88
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    objFSO.CopyFile "C:\test.exe" , Chr(i) & ":\", OverwriteExisting
Next

Open in new window

0
Shift-3Commented:
To elaborate, I used the Asc function to get the decimal ASCII value of the letters P and G, e.g.
WScript.Echo Asc("P")WScript.Echo Asc("X")

This returns values of 80 and 88.  (There are also tables available online where you can look these up.)

I then used a For...Next loop to iterate through the numbers 80-88.

The Chr function converts from the ASCII value back to the character.
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
ITCSHRPKAuthor Commented:
Thanks Sage..

If I wanted to change this up a bit and have it actually copy to a IP on a seperate Domain how would I go about that. This will end up being scheduled to run in the early hours of the morning.

The current process that I have is Map the drives - Copy the files - Remove the Drive mapping.. all items are completed via a VBS file.

Thanks
0
Shift-3Commented:
You would do better to skip mapping the drives and just copy the files using the UNC paths.

You could put the target paths in an array and then copy to each of them, as below.  Run the scheduled task under an account which has permission to write to the destinations.


Const OverwriteExisting = True
 
arrTargets = Array("\\192.168.100.100\share\","\\192.168.100.101\share\")
 
For Each strTarget in arrTargets
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    objFSO.CopyFile "C:\test.exe", strTarget, OverwriteExisting
Next

Open in new window

0
ITCSHRPKAuthor Commented:
Thanks again Sage.. Much appreciated will give that a shot and see how it goes..
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
VB Script

From novice to tech pro — start learning today.