Login Registrati
Stai vedendo 3 articoli - dal 1 a 3 (di 3 totali)
  • Autore
    Articoli
  • #50915 Score: 0 | Risposta

    ABRAMO48
    Partecipante
      1 pt

      Ho bisogno di spostare una cartella da una directory ad un'altra, con tutti i file in essa contenuti, ma non trovo l'istruzione giusta.

      Quando devo copiare un file uso:

      FileCopy  e funziona perfettamente

      Ma se devo copiare una cartella, con tutti i file in essa contenuti, non funzionano

      né CopyFolder

      né CopyDirectory

      proprio non li riconosce come funzioni ...

      ma perche? Come posso fare carissimi? 

      #50917 Score: 0 | Risposta

      vecchio frac
      Senior Moderator
        272 pts

        CopyFolder esiste ma e' un metodo di un oggetto FileSystemObject, quindi prima devi dichiarare una variabile di questo tipo e poi utilizzarne i metodi. Se ti serve spostare una cartella da una locazione all'altra devi usare MoveFolder che appartiene sempre a un oggetto FileSystemObject.

        dim fso as object
        
        set fso = createobject("scripting.filesystemobject")
        
        fso.movefolder source, destination

        source puo' contenere caratteri jolly, mentre destination no. 

        Se source contiene caratteri jolly o destination termina con un separatore di percorso (\), presume che destination specifichi una cartella esistente in cui spostare i file corrispondenti. Altrimenti, presume che destination sia il nome di una cartella di destinazione da creare.

         

         

        #50920 Score: 0 | Risposta

        vecchio frac
        Senior Moderator
          272 pts

          Puoi anche efficacemente utilizzare una bella Shell di Windows. Senza usare oggetti esterni da annientare poi (avevo scordato di specificarlo):

          source = "c:\users\...\desktop\test"
          destination = "d:\backup"
          
          s = "cmd /c robocopy 1 2 /e /move"
          s = replace(s, "`", chr(34))
          s = replace (s, "1", source)
          s = replace (s, "2", destination)
          
          shell s

          Robocopy e' un comando molto carino e molto potente.

          In questo esempio devi sostituire i tre puntini col nome utente corretto, avere sul desktop una cartella test con dei file e un disco d, questo sposta test dal desktop in d:\backup (e crea la directory se non esiste).

        Login Registrati
        Stai vedendo 3 articoli - dal 1 a 3 (di 3 totali)
        Rispondi a: Copiare una directory
        Gli allegati sono permessi solo ad utenti REGISTRATI
        Le tue informazioni: