IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

Copier toute les images jpg et bmp d'un répertoire


Sujet :

VB 6 et antérieur

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2004
    Messages : 100
    Points : 65
    Points
    65
    Par défaut Copier toute les images jpg et bmp d'un répertoire
    Salut à tous,

    Voilà, la titre en dit long. Je voudrais savoir comment copier toutes les images finissant par .jpg et .bmp d'un répertoire.

    J'ai trouvé dans la FAQ comment copier le répertoire complet, mais je ne sais pas comment appliquer un "filtre" à cette fonction.

    Merci

  2. #2
    Membre expert
    Avatar de Delbeke
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    2 675
    Détails du profil
    Informations personnelles :
    Âge : 70
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 675
    Points : 3 696
    Points
    3 696
    Par défaut
    Dans le sous forum distribution, j'ai posté un composant Difiletool6.ocx avec ses sources qui devrait permettre cela.
    http://www.developpez.net/forums/sho...d.php?t=203465

    Il suffit d' un dir("*.jpg" ) pour obtenir tous les jpg, d'ajouter chaque fichier avec la fonction addsourcefile, Indiquer la destionation avec Adddestfile,puis de lancer la fonction FileCopy ou FileMove

    Exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
      Dim strTemp As String
      Dim MySourceDirectory As String
      Dim MyDestDirectory As String
     
      MySourceDirectory = " C:\TestDirectorySource"
      MySourceDirectory = " C:\TestDirectorySDestination"
     
      strTemp = Dir(MySourceDirectory & "\*.jpg")
      Do While strTemp <> ""
        FileTool1.AddSourceFile MySourceDirectory & "\" & strTemp
        strTemp = Dir
      Loop
     
      strTemp = Dir(MySourceDirectory & "\*.bmp")
      Do While strTemp <> ""
        FileTool1.AddSourceFile MySourceDirectory & "\" & strTemp
        strTemp = Dir
      Loop
      FileTool1.AddDestFile MyDestDirectory
      FileTool1.CopyFiles
      FileTool1.MoveFiles
    En général, on ne demande de conseils que pour ne pas les suivre ou, si on les a suivis, reprocher à quelqu'un de les avoir donnés
    (ALEXANDRE DUMAS)

    N'hésitez pas à visiter ma page de contributions

  3. #3
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    sinon avec filesystemobject..

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    Sub copieImage()
     Dim repSource as string
     Dim repDest as string
     Dim Fso
     Set Fso = CreateObject("Scripting.FileSystemObject")
     repSource  = "c:\tmp"
     repDest  = "c:\temp"
     Fso.CopyFile repSource & "\*.jpg", repDest
     Fso.CopyFile repSource & "\*.bmp", repDest
      Set Fso = Nothing
    End Sub

  4. #4
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    Euh...(pour DelBeke)
    Et pourquoi pas une seule boucle avec un "filtre" *.* puis la copie des seuls dont right(stremp, 4) = ".jpg" or right(stremp,4) = ".bmp" ?

  5. #5
    Membre expert
    Avatar de Delbeke
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    2 675
    Détails du profil
    Informations personnelles :
    Âge : 70
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 675
    Points : 3 696
    Points
    3 696
    Par défaut
    Je voulais faire simple et comprehensible. donc le moins de test possible
    En général, on ne demande de conseils que pour ne pas les suivre ou, si on les a suivis, reprocher à quelqu'un de les avoir donnés
    (ALEXANDRE DUMAS)

    N'hésitez pas à visiter ma page de contributions

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2004
    Messages : 100
    Points : 65
    Points
    65
    Par défaut
    Del, ca fonctionne vraiment bien, mais j'ai également besoin des images qui se trouvent dans tous les sous répertoires...

  7. #7
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    Tu as également ceci, Shortcutz, qui date d'il y a 2 jours à peine :
    http://www.developpez.net/forums/sho...61#post1308061
    Celà fonctionne de façon récursive et balaye tous les sous-répertoire également.
    Dans le module, le filtre est sur cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cherchechemin = FindFirstFile(chemin & "*", WFD)
    A toi de jouer (c'est fastoche)...

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2004
    Messages : 100
    Points : 65
    Points
    65
    Par défaut
    Malheureusement je reçois un message d'erreur en exécutant ce zip,

    Compile error :

    Argument not optional.

    Debug me pointe la ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Split = InStr(versrep$, "\")
    Avec le Split = surligné.

  9. #9
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    j'ai pas vu le zip.. mais Split est un mot réservé en VB6, s'il est utilisé en tant que variable Integer ici , vu le code renomme le ... remplace le par exemple par iSplit..


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Dim iSplit as integer 
    ...
     
    iSplit = InStr(versrep$, "\")...;

  10. #10
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    Bonsoir Bbil,

    Si notre ami ShortCutz avait lu le message 18 de la discussion du lien, il y aurait trouvé ceci :
    Citation:
    comme tu es en vb5, tu utilises Split (qui est utilisé en vb6).

    Ouais...
    Remplace split par jmfcoucou alors .....

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2004
    Messages : 100
    Points : 65
    Points
    65
    Par défaut
    Oui ça fonctionne très bien. Mais je constate que ^ca ne fonctionne qu'en local. Est-il possible de faire la même chose en réseau ? J'ai essayé en changeant le versrep$ pour "\\ShortZ\Partage\test", mais ca ne fonctionne pas...

  12. #12
    Membre expert
    Avatar de Delbeke
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    2 675
    Détails du profil
    Informations personnelles :
    Âge : 70
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 675
    Points : 3 696
    Points
    3 696
    Par défaut
    Citation Envoyé par ShortcutZ
    Del, ca fonctionne vraiment bien, mais j'ai également besoin des images qui se trouvent dans tous les sous répertoires...
    Désolé, j'ai raté ce message


    Je suis pas sur que ca fonctionnera mais essaye

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Filetool1.AddDestFile Mydirectory & "\*.jpg"
      Filetool1.AddDestFile Mydirectory & "\*.bmp"
      Filetool1.includedirectories = true
      FileTool1.AddDestFile MyDestDirectory
      FileTool1.CopyFiles
    En général, on ne demande de conseils que pour ne pas les suivre ou, si on les a suivis, reprocher à quelqu'un de les avoir donnés
    (ALEXANDRE DUMAS)

    N'hésitez pas à visiter ma page de contributions

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2004
    Messages : 100
    Points : 65
    Points
    65
    Par défaut
    Salut Del,

    J'ai essayé le bout de code ci-dessus mais ça ne fonctionne pas. Par contre, j'ai réussit à modifier le code de jmf pour copier à travers le réseau.

    Merci à tous pour votre aide, je suis toujours étonné de voir que certaines personnes se donne du mal pour m'aider à résoudre des petits problèmes qui ne les concernent pas du tout.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 03/06/2015, 10h21
  2. DirectX et les images jpg, png et bmp
    Par Auteur dans le forum DirectX
    Réponses: 9
    Dernier message: 11/03/2010, 21h50
  3. afficher toutes les images en meme temps
    Par dietrich dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 04/04/2006, 12h18
  4. Réponses: 1
    Dernier message: 18/02/2006, 18h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo