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

 C++ Discussion :

Chemin d'un exécutable


Sujet :

C++

  1. #1
    Membre à l'essai
    Homme Profil pro
    Dmaths
    Inscrit en
    Février 2006
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Dmaths
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2006
    Messages : 19
    Points : 11
    Points
    11
    Par défaut Chemin d'un exécutable
    Bonjour,

    Je voudrais retrouver le chemin d'un exécutable connu dans le PATH du système.
    Je m'explique : dans une console, si je tape soffice.exe sous Windows ou soffice sous Linux, l'application OpenOffice.org se lance.
    Donc le système d'exploitation connait le chemin.

    Comment faire pour le récupérer avec du code C++ ?

    Merci d'avance.

  2. #2
    Rédacteur

    Avatar de Davidbrcz
    Homme Profil pro
    Ing Supaéro - Doctorant ONERA
    Inscrit en
    Juin 2006
    Messages
    2 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ing Supaéro - Doctorant ONERA

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 307
    Points : 4 732
    Points
    4 732
    Par défaut
    Donc le système d'exploitation connait le chemin.
    Pas exactement.
    Ton shell dispose d'une liste de répertoires dans lequel il peut chercher un exécutable (la variable PATH sous linux). Il ne connait aucun chemin par coeur, il se contente de lister les fichiers des dits répertoires et regarde si un fichier porte le même nom que la commande tapée.

    En C++, je ne vois pas trop à part lister ou exécuter un which sous linux (pas d'idée équivalente sous windows)
    "Never use brute force in fighting an exponential." (Andrei Alexandrescu)

    Mes articles dont Conseils divers sur le C++
    Une très bonne doc sur le C++ (en) Why linux is better (fr)

  3. #3
    Membre à l'essai
    Homme Profil pro
    Dmaths
    Inscrit en
    Février 2006
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Dmaths
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2006
    Messages : 19
    Points : 11
    Points
    11
    Par défaut
    Citation Envoyé par Davidbrcz Voir le message
    Pas exactement.
    En C++, je ne vois pas trop à part lister ou exécuter un which sous linux (pas d'idée équivalente sous windows)
    Merci pour ta réponse.
    Je suis vraiment très débutant. Pourrais-tu m'en dire plus ?

    J'essaie d'écrire un petit exécutable pour installer le logiciel que je développe : www.dmaths.org

  4. #4
    Rédacteur

    Avatar de Davidbrcz
    Homme Profil pro
    Ing Supaéro - Doctorant ONERA
    Inscrit en
    Juin 2006
    Messages
    2 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ing Supaéro - Doctorant ONERA

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 307
    Points : 4 732
    Points
    4 732
    Par défaut
    Si le but est de créer un installateur, alors tourne toi vers les installateurs automatiques Windows (come InnoSetup) ou vers les paquets des distributions Linux car ta solution actuelle (que j'imagine assez bien) est bancale et va amener un bordel monstre.

    Ton problème se trouve donc être plus un problème système que C++
    "Never use brute force in fighting an exponential." (Andrei Alexandrescu)

    Mes articles dont Conseils divers sur le C++
    Une très bonne doc sur le C++ (en) Why linux is better (fr)

  5. #5
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Points : 50 367
    Points
    50 367
    Par défaut
    Citation Envoyé par Davidbrcz Voir le message
    ...En C++, je ne vois pas trop à part lister ou exécuter un which sous linux (pas d'idée équivalente sous windows)
    Récupérer la variable d'environnement PATH et rechercher dans tous les répertoires spécifiés par cette variable ?

    Citation Envoyé par Davidbrcz Voir le message
    Si le but est de créer un installateur, alors tourne toi vers les installateurs automatiques Windows (come InnoSetup) ou vers les paquets des distributions Linux car ta solution actuelle (que j'imagine assez bien) est bancale et va amener un bordel monstre.
    +1 pour Innosetup, j'adore ce programme, c'est simple, gratuit et cela marche bien.
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  6. #6
    Membre à l'essai
    Homme Profil pro
    Dmaths
    Inscrit en
    Février 2006
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Dmaths
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2006
    Messages : 19
    Points : 11
    Points
    11
    Par défaut
    Citation Envoyé par ram-0000 Voir le message
    Récupérer la variable d'environnement PATH et rechercher dans tous les répertoires spécifiés par cette variable ?
    Merci, j'y ai pensé mais ne sait pas faire ...

    +1 pour Innosetup, j'adore ce programme, c'est simple, gratuit et cela marche bien.
    Certes, mais ce programme ne fonctionne que pour Windows.
    Et je cherche à écrire un installateur multiplateforme qui ferait :
    - ferme OpenOffice.org,
    - installe mon Addon en utilisant un exéutable situé dans le même dossier que l'executable soffice,
    - lance une macro que je fournis,
    - relance OpenOffice.org.

    Tout cela fonctionne sans aucun problème. Mais il me reste à trouver le code qui permette de localiser le fichier soffice sous Lin ou soffice.exe sous Win.

    Merci pour vos réponses.

  7. #7
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Points : 4 846
    Points
    4 846
    Par défaut
    Citation Envoyé par ddorange Voir le message
    Et je cherche à écrire un installateur multiplateforme qui ferait :
    Bonne chance : vu que les fonctions systèmes permettant de faire ça sont totalement différentes entre Windows et Linux, tu vas devoir écrire ton installeur deux fois en entremêlant le code... Et sans être dispensé, en plus, de devoir le compiler pour chaque OS !!

    Autant prendre une solution native sur chaque OS : au moins, ça marche, c'est fiable, et ça ne déroute pas les gens.
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

Discussions similaires

  1. Comment récuperer le chemin d'un exécutable ?
    Par bigey3 dans le forum Langage
    Réponses: 13
    Dernier message: 01/01/2008, 18h14
  2. [vbscript] chemin vers un exécutable + options
    Par alexaadre dans le forum VBScript
    Réponses: 5
    Dernier message: 08/06/2007, 15h35
  3. [WinDev 9] Chemin de l'exécutable auto-extractible
    Par olivier de rouen dans le forum WinDev
    Réponses: 2
    Dernier message: 07/06/2007, 10h36
  4. chemin jusqu'à l'exécutable
    Par troumad dans le forum GTK+ avec C & C++
    Réponses: 5
    Dernier message: 18/04/2007, 17h00
  5. [C#][.NET2]Chemin vers l'exécutable d'un service
    Par ben_popcorn dans le forum Windows Forms
    Réponses: 2
    Dernier message: 16/04/2007, 02h15

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