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 :

Copie de fichier dans repertoire selon extension


Sujet :

VB 6 et antérieur

  1. #1
    Mut
    Mut est déconnecté
    Membre averti Avatar de Mut
    Homme Profil pro
    Inscrit en
    Mars 2003
    Messages
    931
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Mars 2003
    Messages : 931
    Points : 307
    Points
    307
    Par défaut Copie de fichier dans repertoire selon extension
    Bonjour !

    J'essais de copier des fichiers selon une extension (.pdf) dans un dossier de destination (sans spécifier les noms de fichiers).

    J'ai fais des tests avec copyfile mais il n'a pas l'air de prendre le c:\*.pdf...

    Si quelqu'un a une idée...


    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
    Et si tu nous montrait le code que tu utilises ?
    Copyfiles n'est pas une instruction vb6
    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
    Mut
    Mut est déconnecté
    Membre averti Avatar de Mut
    Homme Profil pro
    Inscrit en
    Mars 2003
    Messages
    931
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Mars 2003
    Messages : 931
    Points : 307
    Points
    307
    Par défaut
    En fait mon code ne correspond pas vraiment à mon besoin....

    dans le module :

    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
    23
    24
    25
    26
    27
    28
     
     
            Private Declare Function CopyFileA Lib "kernel32" _
      ( _
      ByVal lpExistingFileName As String, _
      ByVal lpNewFileName As String, _
      ByVal bFailIfExists As Long _
      ) _
      As Long
     
    Private Const MAX_PATH = 260
     
     
    Function MyFileCopy(ByVal Source As String, _
                       ByVal Destination As String, _
                       Optional ByVal Overwrite As Boolean = True) As Boolean
     
     
        If Len(Destination) > MAX_PATH Or Len(Source) > MAX_PATH Then
            MyFileCopy = False
        Else
            If (Overwrite) Then
                MyFileCopy = (CopyFileA(Source, Destination, 0) <> 0)
            Else
                MyFileCopy = (CopyFileA(Source, Destination, 1) <> 0)
            End If
        End If
    End Function
    Ensuite
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    retour=MyFileCopy("c:\*.pdf","c:\test")
    ça ne fonctionne pas car à mon avis la fonction ne gère pas le "*" et il faut également lui spécifier un nom de fichier dans la destination alors que moi je souhaite lui spécifier un repertoire cible et non un fichier...J'espère que c'est un peu plus clair...

  4. #4
    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
    Effectivement, l' api copyfile ne gère pas les wildchars.Pour faire çà, on utilise l'api SHFileOperation, qui est u peu plus compliquée à utiliser.
    Tu trouveras dans mes contributions, un composant écrit en vb6 avec son source qui fait çà (entre autres) DiFileTools6.ocx.
    Tu peux l'utiliser tel quel ou extraitre la partie qui s'occupe de la copie de fichiers
    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

  5. #5
    Mut
    Mut est déconnecté
    Membre averti Avatar de Mut
    Homme Profil pro
    Inscrit en
    Mars 2003
    Messages
    931
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Mars 2003
    Messages : 931
    Points : 307
    Points
    307
    Par défaut
    C'est tout simplement parfait ! Un peu dur de récupérer la partie qui m'intéressait mais ça fonctionne maintenant !

    Merci beaucoup !

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

Discussions similaires

  1. copie de fichier dans un autre repertoire
    Par paul fa dans le forum Langage
    Réponses: 5
    Dernier message: 21/07/2009, 12h00
  2. [WD10] lister Fichier dans repertoire
    Par jeruzalem dans le forum WinDev
    Réponses: 3
    Dernier message: 05/12/2007, 12h28
  3. [VBA-E]Lister fichiers dans repertoires et sous-rep
    Par megapacman dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 04/05/2007, 16h55
  4. [VBA-Excel] Liste fichier de repertoire selon critere
    Par Kaiba dans le forum Macros et VBA Excel
    Réponses: 18
    Dernier message: 09/02/2007, 13h07
  5. Copie de fichiers dans un meme repertoire
    Par pezihale_84 dans le forum Access
    Réponses: 4
    Dernier message: 30/06/2006, 10h24

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