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

Langage Delphi Discussion :

Trouver un exécutable commencant par...


Sujet :

Langage Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juillet 2003
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 37
    Par défaut Trouver un exécutable commencant par...
    Bonjour à tous,

    Mon but est le suivant :

    À partir de mon programme, rechercher dans le répertoire courant (celui du programme) un exécutable dont le nom commence par une chaîne spécifique.

    Par exemple, supposons que l'exécutable s'appelle UnExecutable.exe, si j'appellais supposons ma fonction :

    Recherche('UnExec');

    Ça me retournerait l'exécutable en question. Auriez-vous quelques pistes à me fournir afin d'arriver à ce but?

    Merci d'avance...

  2. #2
    Membre éclairé Avatar de poussinphp
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    428
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 428
    Par défaut
    Bonjour,

    Tu pourrais utilise pas une fonction dos que tu récupère genre : dir unexec*.exe

  3. #3
    Expert confirmé
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 932
    Par défaut
    Regarde les fonctions FindFirst et FindNext pour la recherche. ->

    Le répertoire peut-être obtenu par ExtractFilePath(ParamStr(0)), le nom de ton prog est dans ParamStr(0) et tu en extrais ce que tu veux avec Copy

    tape ces noms de fonction dans l'éditeur, place le curseur dessus puis

  4. #4
    Membre averti

    Inscrit en
    Décembre 2004
    Messages
    52
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 52
    Par défaut
    Il te faut parcourir le repertoire aide toi de cela

    http://delphi.developpez.com/faq/?pa...listerfichiers
    Au lieu de cette ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If FindFirst(Chemin+'*.*',faAnyFile,Info)=0 Then
    tu met celle la
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If FindFirst(Chemin+'*.exe',faAnyFile,Info)=0 Then
    Et ensuite tu recherhce ta chaine dans Info.FindData.cFileName

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    488
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 488
    Par défaut
    Citation Envoyé par Charette
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If FindFirst(Chemin+'*.exe',faAnyFile,Info)=0 Then
    ou encore plus simplement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If FindFirst(Chemin+'UnExec*.exe',faAnyFile,Info)=0 Then
    Comme ça tu as tous les fichiers correspondant à ta recherche.

  6. #6
    Membre averti
    Inscrit en
    Juillet 2003
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 37
    Par défaut
    Un gros merci à tous!!!

    Mon programme sera situé sur un cd, alors j'ai procédé comme suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if FindFirst( ExtractFileDrive( ParamStr(0) ) + '\UnExec*.exe', faAnyFile, l_Info) = 0 then
    begin
      //Traitement...
    end;
    Nickel chrome!!!
    Merci encore...

  7. #7
    Membre Expert
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 698
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 698
    Par défaut
    N'oublie pas d'appeller la foncntion FindClose, comme dit dans l'aide Delphi :
    Citation Envoyé par Aide Delphi
    Remarque : La fonction FindFirst alloue des ressources (mémoire) qui doivent être libérées avec FindClose.
    L'urgent est fait, l'impossible est en cours, pour les miracles prévoir un délai. :bug: ___ "http://club.developpez.com/regles/#LIII-A"Écrivez dans un français correct !!

    C++Builder 5 - Delphi 6#2 Entreprise - Delphi 2007 Entreprise - Delphi 2010 Architecte - Delphi XE Entreprise - Delphi XE7 Entreprise - Delphi 10 Entreprise - Delphi 10.4.2 Entreprise - Delphi 11.3 Entreprise - Visual studio 2022
    OpenGL 2.1 - Oracle 10g - Paradox - Interbase (XE) - PostgreSQL (15.7)

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 11/06/2013, 15h25
  2. [Toutes versions] Trouver paragraphes commencant par tabulation
    Par AidezMoiSvp dans le forum VBA Word
    Réponses: 4
    Dernier message: 06/04/2013, 08h38
  3. Réponses: 6
    Dernier message: 08/07/2006, 12h07
  4. identifiant commencant par 1
    Par claudyyyyy dans le forum Langage SQL
    Réponses: 6
    Dernier message: 28/04/2004, 14h16

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