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 :

commande pour trouver un fichier sur le disque dur...


Sujet :

VB 6 et antérieur

  1. #1
    Membre habitué
    Homme Profil pro
    Technicien en numérisation
    Inscrit en
    Juillet 2002
    Messages
    338
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Canada

    Informations professionnelles :
    Activité : Technicien en numérisation

    Informations forums :
    Inscription : Juillet 2002
    Messages : 338
    Points : 155
    Points
    155
    Par défaut commande pour trouver un fichier sur le disque dur...
    Bonjour.

    dans le programme que je code je dois verifier si un fichier ex "xxsInventaire.mdb" ou "*Inventaire*.mdb" existe sur le disque dur de la personne. Si oui le programme continue sinon il s'arrete.

    J'aimerais savoir s'il existe une commande pour partir ce type de recherche soit en API ou autrement ????

    Merci

    AngelEvil!

  2. #2
    Membre éprouvé
    Avatar de méphistopheles
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 551
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 551
    Points : 1 220
    Points
    1 220
    Par défaut
    tu pourrais essayer avec un dir du fso (File system Object) sur un disque dur donné, mais ça peut être assez long... (plus qu'une recherche windos je pense).

    il y as plusieurs articles dans la faq là dessus (cherche à File system Object) .

    salut
    Méphistophélès
    Si la solution ne résout pas votre problème, changez le problème...
    Cours et tutoriels C++ - FAQ C++ - Forum C++.

  3. #3
    Expert éminent
    Avatar de ThierryAIM
    Homme Profil pro
    Inscrit en
    Septembre 2002
    Messages
    3 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2002
    Messages : 3 673
    Points : 8 524
    Points
    8 524
    Par défaut
    Il faut faire une fonction récursive
    http://thierry_aim.ftp-developpez.co...ScanFolder.zip
    Vous vous posez une question, la réponse est peut-être ici :
    Toutes les FAQs VB
    Les Cours et Tutoriels VB6/VBScript
    Les Sources VB6


    Je ne réponds pas aux questions techniques par MP. Utilisez les forums. Merci de votre compréhension

  4. #4
    Membre éprouvé
    Avatar de méphistopheles
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 551
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 551
    Points : 1 220
    Points
    1 220
    Par défaut
    ça risque pas de saturer la mémoire si il fait une fonction recursive sur tout le disque dur?
    enfin ça dépend de la puissace du pc bien sûr...
    Méphistophélès
    Si la solution ne résout pas votre problème, changez le problème...
    Cours et tutoriels C++ - FAQ C++ - Forum C++.

  5. #5
    Membre habitué
    Homme Profil pro
    Technicien en numérisation
    Inscrit en
    Juillet 2002
    Messages
    338
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Canada

    Informations professionnelles :
    Activité : Technicien en numérisation

    Informations forums :
    Inscription : Juillet 2002
    Messages : 338
    Points : 155
    Points
    155
    Par défaut
    Je vais essayer avec FSO....

    Faire un DIR de tous les repertoires.... ouffff ca va prendre un siecle lol

    Merci de vos conseils.

    AngelEvil!

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    290
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 290
    Points : 374
    Points
    374
    Par défaut
    Bonsoir,
    Il me semble que le code que je t'ai donné est pourtant simple, il te suffis de placer une condition si le ficher existe.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Private Sub Command1_Click()
    MsgBox FichierExiste("Biblio.mdb")
    If FichierExiste("Biblio.mdb") Then
        'Ton code si le fichier existe
        Else
        Exit Sub
        End If
    End Sub
    jpleroisse

  7. #7
    Membre éclairé
    Avatar de Theocourant
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    618
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 618
    Points : 739
    Points
    739
    Par défaut
    Citation Envoyé par leroissejp
    Bonsoir,
    Il me semble que le code que je t'ai donné est pourtant simple, il te suffis de placer une condition si le ficher existe.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Private Sub Command1_Click()
    MsgBox FichierExiste("Biblio.mdb")
    If FichierExiste("Biblio.mdb") Then
        'Ton code si le fichier existe
        Else
        Exit Sub
        End If
    End Sub
    jpleroisse
    Salut,

    Le problème de ta solution est que le DIR ne contrôlera que dans le réperoire actif qui est par défaut le répertoire de l'application. Or ce que angelevil cherche à faire est de contrôler sur tous les disques du pc ...

    Il s'agit donc d'une recherche un peu plus poussée mais il y avait de l'idée dans ta réponse

    @+

    Théo
    Forums VB : lire la notice
    La touche existe pour être utilisée
    Pensez au tag
    Pour ceux n'ayant pas l'aide installée :
    - Aide MSDN pour VB6
    - Aide MSDN pour VBA
    Je ne réponds pas aux questions techniques par MP. Merci d'utiliser le forum fait pour çà.

  8. #8
    Expert éminent
    Avatar de ThierryAIM
    Homme Profil pro
    Inscrit en
    Septembre 2002
    Messages
    3 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2002
    Messages : 3 673
    Points : 8 524
    Points
    8 524
    Par défaut Re: commande pour trouver un fichier sur le disque dur...
    Citation Envoyé par angelevil
    je dois verifier si un fichier ex "xxsInventaire.mdb" ou "*Inventaire*.mdb" existe sur le disque dur de la personne
    Soit je ne sais pas lire, soit je suis bouché
    Mais pour trouver un fichier sur un disque, vous avez une autre solution que d'explorer le disque, si vous n'avez pas le répertoire précis !!!!
    Vous vous posez une question, la réponse est peut-être ici :
    Toutes les FAQs VB
    Les Cours et Tutoriels VB6/VBScript
    Les Sources VB6


    Je ne réponds pas aux questions techniques par MP. Utilisez les forums. Merci de votre compréhension

  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
    Citation Envoyé par angelevil
    Faire un DIR de tous les repertoires.... ouffff ca va prendre un siecle lol
    tu trouve que la recherche de fichiers par l'explorateur Windows est rapide ?
    tu pense faire mieux ?

    je crois que tu va devoir prendre ton mal en patiente et passer par cette une fonction récusive comme dis plus haut...

  10. #10
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Hello,
    Je profite de la question de angelevil...
    Un jour j'ai eu besoin de ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Call Shell("cmd /c d:\")
    Call Shell("cmd /c dir Pyramide_des_ages.xls /o /s > Repertoire.txt")
    (crée un fichier texte fournissant la liste de tous les répertoires contenant un fichier nommé)
    N'existe-t-il rien de semblable dans VB...*VBA ?

    A+

  11. #11
    Expert confirmé
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Points : 4 085
    Points
    4 085
    Par défaut
    Salut les mecs

    Wow! en v'là un qui connait ses commandes DOS!

    Si Shell ne fonctionne pas, il y a toujours l'API ShellExecute.

  12. #12
    Membre habitué
    Homme Profil pro
    Technicien en numérisation
    Inscrit en
    Juillet 2002
    Messages
    338
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Canada

    Informations professionnelles :
    Activité : Technicien en numérisation

    Informations forums :
    Inscription : Juillet 2002
    Messages : 338
    Points : 155
    Points
    155
    Par défaut
    L'API de ShellExecute ne va pas partir ACCESS.EXE pour ouvrir la BD que je recherche ?

    De plus il se peut que la personne ait plusieurs BD du meme nom sur le disque dur.

    en fait la personne va sur le site de la compagnie pour qui je travaille, va dans son profil utilisateur, download la MDB sur son poste et le programme que je code doit prendre les infos qui sont dans la MDB qui vient de downloader et inserer ce qui est nouveau dans une BD connu et fixe sur le PC. Comme cela la compagnie a son inventaire comparable a celui de l'internet.

    AngelEvil

  13. #13
    Membre expérimenté Avatar de Megaxel
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    1 187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 1 187
    Points : 1 405
    Points
    1 405
    Par défaut
    Bonjour tout le monde!
    Ha ouais, d'accord, mais là, c'est plus du jeu, parce que ton utilisateur peut le placer où il veut. Et pourquoi pas sur un répertoire réseau, aussi. Tu coup, tu devras "fouiller" tout le voisinage réseau du PC... Alors là, il ne faut pas être plus royaliste que le roi, et ne pas faire croire que l'informatique fait de la magie: au lancement de ton appli, ouvre un browser de fichiers et demande à ton utilisateur de pointer sur le fichier .mdb qu'il vient de télécharger, là où il l'a mis.

  14. #14
    Membre habitué
    Homme Profil pro
    Technicien en numérisation
    Inscrit en
    Juillet 2002
    Messages
    338
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Canada

    Informations professionnelles :
    Activité : Technicien en numérisation

    Informations forums :
    Inscription : Juillet 2002
    Messages : 338
    Points : 155
    Points
    155
    Par défaut
    Je comprends ton idée. Juste un point a préciser. Les clients n'ont pas de lecteurs réseaux et ils ont juste un disque dur avec une partition. Nous nous sommes renseignés avant de penser a creer ce petit logiciel.

    Je vais checker ca. au pire je viendrai demander votre aide.

    merci

  15. #15
    Expert confirmé
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Points : 4 085
    Points
    4 085
    Par défaut
    Salut

    Voici comment je procéderais:

    À la création du programme d'installation, j'incluerais une boîte de dialogue qui demanderait à l'utilisateur de sélectionner le fichier de base de données par défaut (essenciel au fonctionnement du programme) et j'en écrirais le chemin dans une sous-clé de registre ou dans un fichier ini.

    Sinon, y'a rien comme une boîte de dialogue Ouvrir. Quite à la faire afficher au démarrage de l'application.

    Re-sinon, faudra "scanner" tous les lecteurs de la machine, voire même les lecteurs réseaux... et ça risque d'être long!

Discussions similaires

  1. Rechercher un fichier sur le disque dur et le sup.
    Par Kysers95 dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 08/09/2007, 00h38
  2. Réponses: 3
    Dernier message: 26/07/2007, 16h01
  3. Réponses: 2
    Dernier message: 24/04/2007, 08h03
  4. Problème de déplacement de fichier sur le Disque Dur
    Par DeFCrew dans le forum Sécurité
    Réponses: 8
    Dernier message: 11/09/2006, 11h44
  5. Condition sur existence de fichier sur le disque dur
    Par manshoon dans le forum Langage
    Réponses: 3
    Dernier message: 10/05/2006, 09h58

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