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

Lazarus Pascal Discussion :

Récupérer le nom de l'application


Sujet :

Lazarus Pascal

  1. #1
    Nouveau membre du Club
    Récupérer le nom de l'application
    Bonjour

    Je voudrai récupérer le nom de l'application mais 'Application.Name' ne me retourne rien alors que 'Application.ExeName' me retourne bien le chemin.

    merci

  2. #2
    Modérateur

    Bonsoir,
    Application.Title ?
    Delphi 5 Pro - Delphi 10.3.2 Rio Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  3. #3
    Nouveau membre du Club
    bonsoir

    'Application.Title' renvoi le titre de la fenêtre, moi je veux le nom de l'exe.

  4. #4
    Membre éclairé
    Bonjour

    ApplicationName


    ApplicationName returns the name of the current application. Standard this is equal to the filename part minus extension of ParamStr(0), but it can be customized by setting the OnGetApplicationName callback.

    Note that the returned value is only the name portion. It does not contain any path or file extension.

    Errors

    None.
    Personnellement, je mets souvent en place la personnalisation...

    Cordialement

  5. #5
    Modérateur

    Citation Envoyé par TApplication.Title
    The default value is taken from the DLL or EXE file name at runtime.
    Si on ne l'a pas imposé, il vaut donc la même chose que ApplicationName.
    Mais tu parlais de nom d'application, pas d'exécutable. Pour l'appli qui s'appelle LibreOffice, l'exécutable s'appelle soffice.exe, sur mon PC, par exemple.
    Delphi 5 Pro - Delphi 10.3.2 Rio Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  6. #6
    Nouveau membre du Club
    bonjour

    dans mon cas, l'exe n'a pas le même nom que l'application, et donc je veux récupérer le nom de l'exe.

    question: quelle différence entre ApplicationName et Application.Name?

  7. #7
    Membre éclairé
    Bonjour,

    Citation Envoyé par sematimo Voir le message
    bonjour

    dans mon cas, l'exe n'a pas le même nom que l'application, et donc je veux récupérer le nom de l'exe.

    question: quelle différence entre ApplicationName et Application.Name?
    A l'analyse des sources de la RTL et de l'unité Forms on à :

    Application.Name : renvoie le nom de la propriété Name de l'objet Application (type TApplication) créé dans la partie initialization de l'unité Forms. Sous Windows ce nom est la chaîne vide par défaut mais je pense que rien n'empêche d'en spécifier un dans, par exemple, l'événement OnCreate de la fiche principale : Application.Name := 'MonNom' .

    ApplicationName est une fonction de l'unité SysUtils renvoyant par défaut (sous Windows) le nom de fichier extrait du paramètre 0 (Paramstr(0)) donc en principe de l'EXE débarrassé de son chemin et de l'extension. Peut aussi renvoyer le nom d'application spécifié dans les options de projet s'il en est spécifié un dans les options du projet rubrique Titre du projet. Donc pas forcément le nom de l'exe surtout s'il a été renommé après compilation.

    Toutefois la méthode par extraction du paramètre 0 comme évoqué ci-dessus peut être ta solution (sous Windows) :
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    NomExe := ChangeFileExt(ExtractFileName(Paramstr(0)),'')


    Renvoi toujours le nom réel du fichier exe même s'il a été renommé.

  8. #8
    Nouveau membre du Club
    bonjour

    ApplicationName me renvoi le nom de l'application, pas le nom de l'exécutable.
    dans mon cas, les 2 étant différents.

  9. #9
    Membre éclairé
    Revoie mon post ci-dessus nous nous sommes collisionnés pendant que j'y faisait un ajout !

  10. #10
    Nouveau membre du Club
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    NomExe := ChangeFileExt(ExtractFileName(Paramstr(0)),'')

    Avec ce code, je récupère le nom de mon exe.
    Merci

  11. #11
    Membre averti
    Citation Envoyé par sematimo Voir le message
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    NomExe := ChangeFileExt(ExtractFileName(Paramstr(0)),'')

    Avec ce code, je récupère le nom de mon exe.
    Merci
    Application.ExeName;