OVH Cloud OVH Cloud

COPIE DE REPERTOIR

7 réponses
Avatar
Dan
Bonjour a tous.

Je desire copier un repertoir d'une partition a l'autre.
je sais copier un fichier : filecopy
mais existe t'il une instruction pour copier directement un repertoir?
D'avance merci de votre reponse.v

7 réponses

Avatar
Zoury
Salut Dan! :O)

Jètes un oeil ici :

How to Copy or Move an Entire Directory using the API
http://vbnet.mvps.org/code/shell/shdirectorycopy.htm


--
Cordialement
Yanick Lefebvre - MVP pour Visual Basic
http://faq.vb.free.fr/?rubrique=0 - http://www.mvps.org/vbnet/
http://www.mentalis.org/agnet/apiguide.shtml - http://www.mztools.com/

Merci de poster les réponses au groupe afin d'en faire profiter à tous
"Dan" wrote in message
news:4044a271$0$5911$
Bonjour a tous.

Je desire copier un repertoir d'une partition a l'autre.
je sais copier un fichier : filecopy
mais existe t'il une instruction pour copier directement un repertoir?
D'avance merci de votre reponse.v




Avatar
Zoury
ReSalut! :O)

Tu peux également utiliser XCOPY de DOS..

ici je les "wrapper" dans une fonction :
'***
' Module1
Option Explicit

Private Sub Main()
Call CopyDirectory("c:New Folder", "c:New Folder 2")
End Sub

Private Sub CopyDirectory(ByRef SourceDirectory As String, ByRef
DestinationDirectory As String)
SourceDirectory = QualifyPath(SourceDirectory)
DestinationDirectory = QualifyPath(DestinationDirectory)
Call Shell("xcopy """ & SourceDirectory & "*.*"" """ &
DestinationDirectory & "*.*"" /E")
End Sub

Private Function QualifyPath(ByRef DirectoryPath As String) As String
If (Right$(DirectoryPath, 1) <> "") Then
QualifyPath = DirectoryPath & ""
Else
QualifyPath = DirectoryPath
End If
End Function
'***

--
Cordialement
Yanick Lefebvre - MVP pour Visual Basic
http://faq.vb.free.fr/?rubrique=0 - http://www.mvps.org/vbnet/
http://www.mentalis.org/agnet/apiguide.shtml - http://www.mztools.com/

Merci de poster les réponses au groupe afin d'en faire profiter à tous
Avatar
François Picalausa
Bonjour/soir,

en complément, il y a aussi cette fiche de la faq:
http://faq.vb.free.fr/index.php?question5

--
François Picalausa (MVP VB)
FAQ VB : http://faq.vb.free.fr
MSDN : http://msdn.microsoft.com


"Dan" a écrit dans le message de
news:4044a271$0$5911$
Bonjour a tous.

Je desire copier un repertoir d'une partition a l'autre.
je sais copier un fichier : filecopy
mais existe t'il une instruction pour copier directement un repertoir?
D'avance merci de votre reponse.v


Avatar
Dan
Merci bien,Zoury
Je vais essayer cela ,si je rencontre un pb je te recontacte,
dans l'instruction suivante a quoi correspond New Folder et New Folder 2

Call CopyDirectory("c:New Folder", "c:New Folder 2")

dans l'instruction suivante par quoi remplacer les '*.*"
SourceDirectory & "*.*"" """ &
DestinationDirectory & "*.*"" /E")


d'avance merci

"Zoury" <yanick_lefebvre at hotmail dot com> a écrit dans le message de
news:%
ReSalut! :O)

Tu peux également utiliser XCOPY de DOS..

ici je les "wrapper" dans une fonction :
'***
' Module1
Option Explicit

Private Sub Main()
Call CopyDirectory("c:New Folder", "c:New Folder 2")
End Sub

Private Sub CopyDirectory(ByRef SourceDirectory As String, ByRef
DestinationDirectory As String)
SourceDirectory = QualifyPath(SourceDirectory)
DestinationDirectory = QualifyPath(DestinationDirectory)
Call Shell("xcopy """ & SourceDirectory & "*.*"" """ &
DestinationDirectory & "*.*"" /E")
End Sub

Private Function QualifyPath(ByRef DirectoryPath As String) As String
If (Right$(DirectoryPath, 1) <> "") Then
QualifyPath = DirectoryPath & ""
Else
QualifyPath = DirectoryPath
End If
End Function
'***

--
Cordialement
Yanick Lefebvre - MVP pour Visual Basic
http://faq.vb.free.fr/?rubrique=0 - http://www.mvps.org/vbnet/
http://www.mentalis.org/agnet/apiguide.shtml - http://www.mztools.com/

Merci de poster les réponses au groupe afin d'en faire profiter à tous




Avatar
Zoury
Salut Dan! :O)

dans l'instruction suivante a quoi correspond New Folder et New Folder 2



[New Folder] est un répertoire que je me suis créer afin de testé la
fonction. Il contient quelques fichiers ainsi que d'autres répertoires
contenant eux aussi des fichiers..
[New Folder 2] est le nom du nouveau répertoire où je veux copier le contenu
du répertoire [New Folder]. La création de ce répertoire est donc le
résultat obtenu par l'appelle de la fonction.



dans l'instruction suivante par quoi remplacer les '*.*"



les "*.*" indique au système que tu veux copié tous les contenus du
répertoire.. si tu le remplace par ceci "*.bmp" par exemple seul les images
de format Bitmap (.BMP) seront copiées (note que les sous-répertoires seront
aussi créer..)

--
Cordialement
Yanick Lefebvre - MVP pour Visual Basic
http://faq.vb.free.fr/?rubrique=0 - http://www.mvps.org/vbnet/
http://www.mentalis.org/agnet/apiguide.shtml - http://www.mztools.com/

Merci de poster les réponses au groupe afin d'en faire profiter à tous
Avatar
François Picalausa
Bonjour/soir,

dans l'instruction suivante a quoi correspond New Folder et New
Folder 2



Au dossier source et au dossier de destination, respectivement
(ByRef SourceDirectory As String, ByRef DestinationDirectory As String)

dans l'instruction suivante par quoi remplacer les '*.*"


celà correspond à tous les fichiers
il ne faut pas spécialement les remplacer, sauf forte envie de filtrer le
type de fichier
*.exe indique tous les fichiers exe.

--
François Picalausa (MVP VB)
FAQ VB : http://faq.vb.free.fr
MSDN : http://msdn.microsoft.com


"Dan" a écrit dans le message de
news:4044eca2$0$5909$
Merci bien,Zoury
Je vais essayer cela ,si je rencontre un pb je te recontacte,
dans l'instruction suivante a quoi correspond New Folder et New
Folder 2

Call CopyDirectory("c:New Folder", "c:New Folder 2")

dans l'instruction suivante par quoi remplacer les '*.*"
SourceDirectory & "*.*"" """ &
DestinationDirectory & "*.*"" /E")


d'avance merci

"Zoury" <yanick_lefebvre at hotmail dot com> a écrit dans le message
de news:%
ReSalut! :O)

Tu peux également utiliser XCOPY de DOS..

ici je les "wrapper" dans une fonction :
'***
' Module1
Option Explicit

Private Sub Main()
Call CopyDirectory("c:New Folder", "c:New Folder 2")
End Sub

Private Sub CopyDirectory(ByRef SourceDirectory As String, ByRef
DestinationDirectory As String)
SourceDirectory = QualifyPath(SourceDirectory)
DestinationDirectory = QualifyPath(DestinationDirectory)
Call Shell("xcopy """ & SourceDirectory & "*.*"" """ &
DestinationDirectory & "*.*"" /E")
End Sub

Private Function QualifyPath(ByRef DirectoryPath As String) As String
If (Right$(DirectoryPath, 1) <> "") Then
QualifyPath = DirectoryPath & ""
Else
QualifyPath = DirectoryPath
End If
End Function
'***

--
Cordialement
Yanick Lefebvre - MVP pour Visual Basic
http://faq.vb.free.fr/?rubrique=0 - http://www.mvps.org/vbnet/
http://www.mentalis.org/agnet/apiguide.shtml -
http://www.mztools.com/

Merci de poster les réponses au groupe afin d'en faire profiter à
tous




Avatar
Zoury
et bien... c'est pas trop tôt!! :OD