Newsgroup: it.comp.lang.visual-basic
Titolo: copia dell'intero contenuto di una dir (files+sottodir)

Ciao a tutti!
Cercherň di essere breve x farvi perdere il minor tempo possibile con la mia
richiesta.
Allora. Io devo copiare tutto il contenuto di una dir in un altra dir,
mantenendo perň intatta la eventuale struttura delle sottodir.
La mia domanda č: posso trattare una sottodir come se fosse un file e dunque
fare una operazione di filecopy o comunque un operazione che sposti sottodir
e files contenuti in una sola botta?
Grazie di tuttooooo!!!



mantenendo però intatta la eventuale struttura delle sottodir.
L'unica maniera in vb e' memorizzare tutte le cartelle che ci sono dentro ad
un cartella e poi usare dir nella sotto cartella e via di seguito.
Salve
                    Dbg

 grazie
usa l'oggetto FileSystemObject del modulo Scripting (Microsoft Scripting
Runtime, scrrun.dll) che espone sia i metodi MoveFolder che CopyFolder
esempio:
Dim fso As Scripting.FileSystemObject
Set fso = New Scripting.FileSystemObject
fso.CopyFolder strSourcePath, strDestinationPath, flgOverwrite
oppure (se non hai referenziato scrrun.dll nel progetto)
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
fso.CopyFolder strSourcePath, strDestinationPath, flgOverwrite
ciao

Runtime, scrrun.dll) che espone sia i metodi MoveFolder che CopyFolder
Confesso, non conosco lo scripting.
E precisando non lo vorrei utilizzare (non mi fido di cose esterne, o meglio
della ms).
Per curiosita' con grosse quantita' di file che prestazioni ha lo scripting?
Io utilizzo il metodo sopra usando due API, la velocita' di copia e' appena
appena inferiore a quella
di "Gestione Risorse".
Salve
                Dbg

Accidenti c'è un problema.
Su win95 lo scripting non c'è e in ogni caso l'utente per sicurezza mi
sembra che lo puo' disattivare, sto dicendo fregnacce??
Salve
                Dbg


 di "Gestione Risorse".
spero ti risponda hellboy.

 sembra che lo puo' disattivare, sto dicendo fregnacce??
mi sembra che venga installato con ie5 e forse 4. comunque e' uno dei motivi
per cui non mi piace.

 di "Gestione Risorse".
se dovessi fare una copia di una directory mantenendone inalterato il
contenuto,
userei SHFileOperation. trovi una classe (pardon, 'libreria' <g>) che la
utilizza
su 
http://www.softcircuits.com
Ciauz
Faber

userei SHFileOperation. trovi una classe (pardon, 'libreria' <g>) che la
Non conosco SHF, mi informero', le librerie non sono classi, ma sono
strumenti che ti consentono di scrivere codice professionale (da non
confondere con commerciale).
Salve
                        Dbg


chiariamo un attimo alcuni punti:
1) il fatto che la libreria si chiami Scripting non significa che c'entri
nulla con vbscript o javascript o altro; sono pienamente d'accordo che il
nome suggerisce esattamente il contrario; il nome deriva dal fatto che in
questa libreria (scrrun.dll) sono include molte di quelle funzionalità di
cui si ha bisogno in genere durante l'esecuzione di uno script vbscript;
tutto qua; non essendo presenti istruzioni del tipo "FileCopy", "Dir$",
"Open" o altro, Microsoft a messo a punto questa dll;
2) la libreria viene installata praticamente con tutti gli utlimi prodotti
microsoft; su win95 è possibile copiarla in c:\windows\system (o dove più fa
comodo) e registrarla con un banale Regsvr32;
3) se lo scripting di IE viene disabilitato (come probabilmente a questo
punto può apparire chiaro) non succede assolutamente nulla, una eventuale
applicazione che utilizza tale dll funziona come prima
tutto chiaro?
ciao
p.s.: la libreria "scrrun.dll" non l'ho scritta io.... :))

tutto chiaro?


non ho mai fatto prove a riguardo, e riguardo questo potresti avere ragione,
ma come ho ripetuto nel post precedente, il componente scrrun.dll e lo
script non c'entrano un fico secco;
scrun.dll è un componente COM utilizzabile come qualsiasi altro componente
COM come ad esempio il componente Winsock di VB (MSWINSCK.OCX se non vado
errato);
anzi, per dimostrarti il tutto (e forse per "scurirti" ulteriormente le
idee) ti posto un semplicissimo port scanner in vbscript (praticamente
copiato da un vecchio numero di DEV), scritto utilizzando il componente di
cui sopra.... pensi che disinstallando l'interprete vbscript o
disattivandolo a livello di IE i programmi che utilizzano MSWINSCK possano
avere problemi ? :))
    Dim objSock
    Dim nPort
    DIm strOutput
    Set objSock = CreateObject("MsWinsock.Winsock.1")
    On Error Resume Next
    For nPort = 1 To 1024
        objSock.Close
        objSock.LocalPort = nPort
        objSock.Protocol = 0 ' tcp
        objSock.Listen
        If Err.Number Then
            Err.Clear
            strOutput = strOutput & nPort & Chr(13)
        End If
    Next
 MsgBox "Le seguenti porte TCP/IP risultano essere aperte" & Chr(13) &
strOutput
ciao

idee)
Io chiara e lo scuro, ricordi? :)
Ho il dubbio che per quanto riguardi lo script hosting (mi sembra che si
chiami cosi) (vedi file .vbs) la situazione sia diversa, e che sia molto
facile che un utente dicida di privarsi di quegli oggetti (ti ricordi quel
famoso virus .....).
Ed molto probabile che la ms introduca pesanti limitazioni vista la sua
pericolosita'
Mai pensato a IE o a vbscript o java ecc.
Sono due cose diverse, lo script in questione agisce a livello di sistema,
gli altri a livello del navigatore www.
Salve
                    Dbg


scusami ma faccio fatica a seguirti, temo si sia andati a finire un po'
troppo fuori dal seminato;
ciao