Condividi:
Problemi di HTML? Di PHP, ASP, .NET, JSP, Perl, SQL, JavaScript, Visual Basic..?
Vuoi realizzare programmi in C, C++, Java, Ruby o Smalltalk, e non sai da che parte cominciare?
Entra qui e troverai le risposte!
Moderatori: Anthony47, Triumph Of Steel, archimede
di vichi66 » 25/08/05 19:18
Ciao ragazzi ho realizzato un file batch per copiare il contenuto di una cartella in un' altra, solo che vorrei evitare ogni volta che lo eseguo la visualizzazione di tutta la procedura, cioè vorrei nascondere la shell dos esiste un metodo ?
Grazie !
-
vichi66
- Utente Senior
-
- Post: 365
- Iscritto il: 20/11/01 01:00
- Località: Caltanissetta
di hydra » 25/08/05 19:24
Uno script (javascript, vbscript)??? A parte gli scherzi, non penso che quello che chiedi sia possibile, in quanto un file batch non è altro che una sequenza di comandi dos, e per eseguirli ci vuole l'interprete dei comandi.
PRova davvero a pensare all'idea dello script.
-
hydra
- Moderatore
-
- Post: 7007
- Iscritto il: 19/07/04 08:06
- Località: Vallis Duplavis
di vichi66 » 25/08/05 20:51
Non so come funziona lo script !
il mio comando è questo:
xcopy c:\cartella origine\*.*\ c:\cartella destinazione /s/e
come dovrei scrivere per creare uno script ?
-
vichi66
- Utente Senior
-
- Post: 365
- Iscritto il: 20/11/01 01:00
- Località: Caltanissetta
di hydra » 25/08/05 20:57
Esempio:
- Codice: Seleziona tutto
La gestione del file system, come la copia di file e cartelle, richiede l'impiego dell'oggetto File System (FSO). Gli script seguenti illustrano l'utilizzo dell'FSO per copiare sia file che cartelle.
Copia di file
Gli script seguenti illustrano come copiare un file da una cartella locale a un'altra. Lo script crea innanzitutto un oggetto File System. Il metodo CopyFile, un metodo dell'oggetto file system, esegue l'operazione di copia del file. Il metodo CopyFile presenta due parametri: il file sorgente e la destinazione.
// JScript.
var FSO = WScript.CreateObject("Scripting.FileSystemObject");
FSO.CopyFile("c:\\COMPlusLog.txt", "c:\\x\\");
' VBScript.
Dim FSO
Set FSO = CreateObject("Scripting.FileSystemObject")
FSO.CopyFile "c:\COMPlusLog.txt", "c:\x\"
Copia di cartelle
Lo script seguente illustra come copiare il contenuto di una cartella locale in un'altra cartella sul computer locale.
Nota Affinché il metodo funzioni, è necessario che la cartella di destinazione sia già esistente. Per ulteriori informazioni su come creare una directory utilizzando WSH, vedere Metodo CreateFolder.
Lo script crea innanzitutto un oggetto File System. Il metodo CopyFolder, un metodo dell'oggetto file system, esegue l'operazione di copia della cartella. Il metodo CopyFolder presenta due parametri: la cartella di origine e la destinazione.
// JScript.
var FSO = WScript.CreateObject("Scripting.FileSystemObject");
FSO.CopyFolder("c:\\x", "c:\\y");
' VBScript.
Dim FSO
Set FSO = CreateObject("Scripting.FileSystemObject")
FSO.CopyFolder "c:\x", "c:\y"
-
hydra
- Moderatore
-
- Post: 7007
- Iscritto il: 19/07/04 08:06
- Località: Vallis Duplavis
di vichi66 » 25/08/05 21:37
ma per creare questo script ho bisogno di un compilatore ?
-
vichi66
- Utente Senior
-
- Post: 365
- Iscritto il: 20/11/01 01:00
- Località: Caltanissetta
di vichi66 » 25/08/05 21:38
e come si esegue ?
-
vichi66
- Utente Senior
-
- Post: 365
- Iscritto il: 20/11/01 01:00
- Località: Caltanissetta
di vichi66 » 26/08/05 09:26
ho capito...si crea un file con il blocco note con estensione vbs ma non riesco a creare la cartella !!!!
-
vichi66
- Utente Senior
-
- Post: 365
- Iscritto il: 20/11/01 01:00
- Località: Caltanissetta
di archimede » 26/08/05 09:44
Prova a creare un file copia.vbs contenente:
- Codice: Seleziona tutto
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.run "cmd /Q /C xcopy c:\cartella origine\*.*\ c:\cartella destinazione /s/e", 0, False
Forse davanti al comando xcopy devi mettere il percorso completo.
HTH.
Alessandro
-
archimede
- Moderatore
-
- Post: 2851
- Iscritto il: 07/11/02 12:41
- Località: Genova
-
di vichi66 » 26/08/05 10:13
Ho provato ha creare il file con il tuo codice archimede ma non succede nulla !
-
vichi66
- Utente Senior
-
- Post: 365
- Iscritto il: 20/11/01 01:00
- Località: Caltanissetta
di hydra » 26/08/05 10:18
- Codice: Seleziona tutto
Crea una cartella.
oggetto.CreateFolder(nomecartella)
Argomenti
oggetto
Obbligatorio. Nome di un oggetto FileSystemObject.
nomecartella
Obbligatorio. Espressione stringa che identifica la cartella da creare.
Osservazioni
Se la cartella specificata esiste già, verrà generato un errore.
Nell'esempio seguente viene illustrato l'utilizzo del metodo CreateFolder per creare una cartella:
[JScript]
var fso = new ActiveXObject("Scripting.FileSystemObject");
var a = fso.CreateFolder("c:\\nuova cartella");
[VBScript]
Function CreateFolderDemo
Dim fso, f
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.CreateFolder("c:\Nuova cartella")
CreateFolderDemo = f.Path
End Function
-
hydra
- Moderatore
-
- Post: 7007
- Iscritto il: 19/07/04 08:06
- Località: Vallis Duplavis
di archimede » 26/08/05 10:20
vichi66 ha scritto:Ho provato ha creare il file con il tuo codice archimede ma non succede nulla !
Hai anche provato a
mettere il percorso completo davanti al comando xcopy
?
Con il semplice
copy a me funziona.
Alessandro
-
archimede
- Moderatore
-
- Post: 2851
- Iscritto il: 07/11/02 12:41
- Località: Genova
-
di cassioli » 26/08/05 10:26
Ho sentito dire che mettendo il parametro /MIN "da qualche parte" (???) si ottiene l'esecuzione del batch senza che la finestra DOS appaia; pero':
- non ho ben capito dove va 'sto /MIN
Forse nel percorso che compare nelle proprieta' del batch (o PIF che sia...)
- con le prove che ho fatto io (con Win2000) non mi funziona, compare sempre la dannata finestra!
-
cassioli
- Utente Senior
-
- Post: 1014
- Iscritto il: 05/03/04 11:02
di vichi66 » 26/08/05 10:29
Sono riuscito Archimede, ma modificando il tuo codice così:
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.run "cmd /Q /C xcopy c:\cartella origine\*.* c:\cartella destinazione /s/e", 0, False
dopo *.* non ci deve essere "\" ora il problema è che vorrei che la cartella di destinazione me la deve creare il codice stesso, è possibile ?
-
vichi66
- Utente Senior
-
- Post: 365
- Iscritto il: 20/11/01 01:00
- Località: Caltanissetta
di archimede » 26/08/05 10:29
vichi66 ha scritto:Ho provato ha creare il file con il tuo codice archimede ma non succede nulla !
:aaah Davo per scontato che il tuo codice funzionasse;
- Codice: Seleziona tutto
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.run "cmd /Q /C xcopy c:\prova\*.* c:\prova2 /s/e/i", 0, False
Alessandro
-
archimede
- Moderatore
-
- Post: 2851
- Iscritto il: 07/11/02 12:41
- Località: Genova
-
di cassioli » 26/08/05 10:43
Come posso passare un parametro da linea di comando allo script? Il mio script deve impostare l'orario, che riceve come stringa dal programma che lo chiama.
-
cassioli
- Utente Senior
-
- Post: 1014
- Iscritto il: 05/03/04 11:02
di vichi66 » 26/08/05 10:43
Ho provato /MIN ma non succede nulla io ho WinXP !
-
vichi66
- Utente Senior
-
- Post: 365
- Iscritto il: 20/11/01 01:00
- Località: Caltanissetta
di vichi66 » 26/08/05 10:50
Ok Archimede l'ultimo codice è perfetto funziona !!!
Ora se mi daresti una mano per creare una cartella con il VBscript ?
-
vichi66
- Utente Senior
-
- Post: 365
- Iscritto il: 20/11/01 01:00
- Località: Caltanissetta
di vichi66 » 26/08/05 10:54
Ho provato quello da te postato:
[JScript]
var fso = new ActiveXObject("Scripting.FileSystemObject");
var a = fso.CreateFolder("c:\\nuova cartella");
[VBScript]
Function CreateFolderDemo
Dim fso, f
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.CreateFolder("c:\Nuova cartella")
CreateFolderDemo = f.Path
End Function
ma mi appare un errore !!!
-
vichi66
- Utente Senior
-
- Post: 365
- Iscritto il: 20/11/01 01:00
- Località: Caltanissetta
di hydra » 26/08/05 10:56
Non so se hai visto il mio ultimo post. Ti ho incollato per intero il testo della guida in linea, c'è anche il vbscript. Prova a dargli un occhio.
-
hydra
- Moderatore
-
- Post: 7007
- Iscritto il: 19/07/04 08:06
- Località: Vallis Duplavis
Torna a Programmazione
Topic correlati a "Nascondere la shell dos è possibile ?":
Chi c’è in linea
Visitano il forum: Nessuno e 8 ospiti