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

EDI et Outils pour Java Discussion :

[Inno Setup et Launch4j] Chemin relatif en argument du programme installé


Sujet :

EDI et Outils pour Java

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 26
    Points : 11
    Points
    11
    Par défaut [Inno Setup et Launch4j] Chemin relatif en argument du programme installé
    Bonjour !

    J'ai récemment créé un programme en Java pour lequel j'ai fait un installateur pour Windows (à l'aide de Launch4j pour faire une .exe et de Inno Setup pour l'installateur en lui même).
    L'installateur copie un dossier jre dans lequel j'embarque une JRE et un dossier lib dans lequel j'ai mis les librairies dont j'ai besoin et mon propre .jar, il copie aussi l'exécutable à côté (c'est plutôt logique ).
    Le premier argument de mon programme est le chemin d'accès à un fichier. Je voudrais pouvoir lancer mon programme de n'importe où et utiliser un chemin relatif pour mon fichier.
    new File(chemin) semblait ne pas fonctionner pour les chemins relatifs, j'ai donc utilisé System.getProperty("user.dir") pour reconstruire le chemin complet. J'ai vu grâce à ça que le user.dir était toujours le répertoire contenant mon .exe, même quand je fais D:\Program Files\MonProgramme\mon.exe monFichier à partir du répertoire de mon fichier.
    D'où ma première question : est-il possible de changer ça ? Que user.dir soit bien le repertoire dans lequel l'utilisateur était quand il a lancé le programme ?

    En soit, ça ne me dérange pas particulièrement de déplacer mon .exe, le précédent programme fonctionnait déjà comme ça. Le problème est que si j'utilise cette solution, je dois aussi copier ma jre et mes librairies à côté, sinon il me dit qu'il n'a pas trouvé de jre. Et là ça commence à prendre de la place, donc je me demandais si il y avait un moyen dire à mon programme où se trouve la jre, sachant que si je crée une variable d'environnement JAVA_HOME, il ne la prend pas du tout en compte...

    Merci d'avance de vous pencher sur mon problème

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 26
    Points : 11
    Points
    11
    Par défaut
    Bonjour, de nouveau

    Comme je me doute que ma première demande n'est pas très réalisable, je me suis surtout penchée sur la seconde et j'ai un début de réponse.
    Voici un morceau de mon fichier Launch4j :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
      <jre>
        <path>jre</path>
        ...
      </jre>
    Le chemin de ma jre est relatif donc quand je déplace mon .exe, je dois déplacer ma jre...
    Je voudrais pouvoir indiquer un chemin absolu mais il dépend du chemin d'accès au répertoire Program Files :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
      <jre>
        <path>{pf}\Meta\ImprimerEnvoyer\jre</path>
        ...
      </jre>
    Savez-vous s'il y a un équivalent au {pf} de InnoSetup pour Launch4j ? ou au moins une possibilité d'accéder aux variables d'environnement ?

    Merci et à bientôt

Discussions similaires

  1. Réponses: 2
    Dernier message: 18/03/2019, 10h04
  2. Réponses: 3
    Dernier message: 06/12/2010, 15h16
  3. Réponses: 3
    Dernier message: 09/03/2010, 11h22
  4. Réponses: 8
    Dernier message: 30/01/2009, 13h15
  5. [Inno Setup] Chemins dynamiques
    Par Corpio dans le forum Autres Logiciels
    Réponses: 4
    Dernier message: 28/04/2006, 09h32

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