Manipulation de fichiers dans une application vb6

Attila54 Messages postés 409 Date d'inscription jeudi 30 juin 2005 Statut Membre Dernière intervention 21 novembre 2013 - 23 oct. 2010 à 15:46
mstaub Messages postés 51 Date d'inscription dimanche 24 août 2003 Statut Membre Dernière intervention 29 octobre 2010 - 29 oct. 2010 à 22:52
Bonjour,

J'ai crée une toute petite appli en vb qui devrait me permettre :
- avec un button 1 : effacer le contenu d'un repertoire contenu dans un hdd externe usb (la lettre ne changera jamais)
- avec un button 2 : copier le contenu d'un repertoire situe sur une partition d'un HDD vers le hdd externe precedant.
- avec un button 3 : fermer l'appli

rien de particulier me direz vous, pour le deplacement j'ai utilise FSO
Private Sub MoveFld(path_from, path_to) 
ss Dim fso, fldr 
ss Set fso = CreateObject("Scripting.FileSystemObject" ) 
ss Set fldr = fso.GetFolder(path_from) 
ss fldr.Move (path_to) 
End Sub 


pour l'effacement jepensais utiliser
strFile = "path \ filename" 
Set fs CreateObject("Scripting.FileSystemObject") Set fs CreateObject ("Scripting.FileSystemObject") 
fs.deletefile strFile fs.deletefile strFile 


j'ai bien sur renseigne path_from et to ainsi que path \ filename
mais rien de rien ne fonctionne, qu'ais je fait de mal ???
y aurait il quelque chose de plus simple ???

Merci

4 réponses

mstaub Messages postés 51 Date d'inscription dimanche 24 août 2003 Statut Membre Dernière intervention 29 octobre 2010 2
23 oct. 2010 à 18:20
hello,
Oui je sais mes lignes datent sûrement d'un autre temps (le DOS)
mais elles fonctionnent toujours (en VB-6 au moins)

Copier un fichier :
Filecopy "chemin\fichier source","chemin\fichier destination"

supprimer un fichier :
Kill "chemin\nom du fichier"

Créer un dossier :
MKdir "chemin\nom du dossier"

Supprimer un dossier (vide) :
RMdir "chemin\nom du dossier"

donc pour supprimer entièrement un dossier faut recuperer la liste des fichiers contenu dans le dossier (grâce à un FileListBox par ex.)
supprimer chaque fichier puis supprimer le dossier vide

Voili voilou ça a l'air complexe mais avec une boucle bien étudier ça roule vite et bien
0
Attila54 Messages postés 409 Date d'inscription jeudi 30 juin 2005 Statut Membre Dernière intervention 21 novembre 2013 1
25 oct. 2010 à 11:55
merci beaucoup de ton aide mais ..... rien ne fonctionne
j'ai juste, pour tester la fonction de copie,inseré ce petit code
Private Sub Command1_Click()
FileCopy "F:\autorun\vb6\setup.exe", "Z\Test\setup.exe"
End Sub
'avec F:\autorun\vb6\setup.exe mon fichier source et Z\Test\setup.exe ma destination, avec et sans le nom du fichier

puis
Private Sub Command1_Click()
FileCopy "F:\autorun\vb6", "Z\Test"
End Sub
'avec F:\autorun\vb6\le chemin de mon fichier source et Z\Test\ la destination de mon fichier setup.exe

et hop .... message d'erreur : erreur d'execution 76 : chemin d'acces introuvable
0
Duke49 Messages postés 552 Date d'inscription jeudi 12 octobre 2006 Statut Non membre Dernière intervention 24 janvier 2023 4
27 oct. 2010 à 23:52
Z\Test\setup.exe ???

Z:\ il manque deux points ou c'est un lecteur sur un réseau ?
0
mstaub Messages postés 51 Date d'inscription dimanche 24 août 2003 Statut Membre Dernière intervention 29 octobre 2010 2
29 oct. 2010 à 22:52
Hello ,
si "Duke49" ne solutionne pas ton problème (hé oui y manque quelque chose)
c'est que comme le dis le code d'erreur, le chemin n'est pas valide : il y a une erreur dans ton chemin source ou peut-être le dossier destination qui n'existe pas et dans ce cas faut d'abord le créer avec mkdir

pour le "2ème" code c'est normal que ça marche pas :
Un filecopy ne peut pas copier l'ensemble d'un dossier !
il faut (par ex)un filelist avec le bon "path"
et l'utiliser pour copier fichier après fichier grâce à ce filelist
0
Rejoignez-nous