2013-04-18 12 views
17

Ho bisogno di eseguire un comando per copiare un file da una posizione a un'altra tramite prompt dei comandi utilizzando un file vbs. questo è ciò che ho comunque continua a lanciare un errore su di me.Esegui riga di comando e comando da VBS

'Dim oShell 
Set oShell = WScript.CreateObject ("WScript.Shell") 
oShell.run "cmd.exe /C copy "S:Claims\Sound.wav" "C:\WINDOWS\Media\Sound.wav" 
Set oShell = Nothing' 

l'errore che ottengo è:

'Script: C:\******\command.vbs 
Char: 30 
Error: Expected end of statement 
Code: 80040401 

Fonte: Microsoft VBScript errore di compilazione'

Aiutateci :)

risposta

25

Il problema è su questa linea:

oShell.run "cmd.exe /C copy "S:Claims\Sound.wav" "C:\WINDOWS\Media\Sound.wav" 

Il tuo primo q accanto a "S: Claims" termina la stringa; è necessario sfuggire le virgolette intorno ai vostri file con una seconda citazione, in questo modo:

oShell.run "cmd.exe /C copy ""S:\Claims\Sound.wav"" ""C:\WINDOWS\Media\Sound.wav"" " 

Hai anche un errore di battitura nel S:Claims\Sound.wav, dovrebbe essere S:\Claims\Sound.wav.

Suppongo anche che l'apostrofo prima dello Dim oShell e dopo Set oShell = Nothing siano errori di battitura.

+0

Ciao, grazie per la risposta, questo ha senso. Sì, gli apostrofi erano refusi. Funziona a meraviglia! :) – user1590368

+0

s: claims \ sound.wav è valido (file sound.wav nella cartella delle attestazioni nella cartella di lavoro corrente sull'unità S) dove S: \ claims specifica che la cartella delle attestazioni è nella root (e forse la stessa di s: claims) – NeronLeVelu

+2

Ciao utente1590368, Potrebbe contrassegnare questa soluzione come la risposta corretta? – Navin

3
Set oShell = CreateObject ("WScript.Shell") 
oShell.run "cmd.exe /C copy ""S:Claims\Sound.wav"" ""C:\WINDOWS\Media\Sound.wav"" "