Bonjour,
je suis pas sûr que ma question soit adéquate sur ce forum mais je tente ma chance.
voilà le problème :
j'ai créé une petite application java qui doit écrire des fichiers logs. J'ai exporté mon appli en .jar puis en .exe et je lui ai créé un installeur. L'objectif de l'installeur est d'associer une url de type bonzai:// à mon application (un peu comme ed2k pour emule).
Pour l'instant, l'installeur n'est que pour Windows : il associe l'url bonzai à mon application dans la base de registre en utilisant les clés :
[bonzai]
[shell]
[command] >> par défaut >> C:\Program Files\Mon Appli\MonAppli.exe %1
L'association en elle-même fonctionne, mon programme est bien lancé, le problème est qu'il est lancé depuis le répertoire du bureau et non depuis son répertoire d'installation (System.getProperty("user.home") renvoie systématiquement mon bureau). Du coup, mes fichiers de logs sont enregistrés sur le bureau au lieu d'être enregistrés dans le répertoire de l'application.
J'ai bien trouvé une solution qui consiste à ajouter une clé dans la base de registre par l'installeur dans laquelle je spécifie le path de l'appli, puis je vais lire cette clé depuis mon programme mais je n'aime pas vraiment cette solution qui fait que mon appli devient spécifique windows (et que je ne trouve pas ça propre de toute façon).
J'en viens donc à ma question

Y'a-t-il un moyen en java de désigner le répertoire où se trouve physiquement l'application (pas forcément celui depuis lequel elle est lancée) ?
Y'a-t-il sinon un moyen de spécifier un répertoire de départ dans la base de registre pour lancer mon appli ?
(un peu comme les raccourcis windows où on spécifie la "cible" et le "démarrer dans", c'est ce "démarrer dans" que j'aimerais spécifier dans ma base de registre).
Merci d'avoir tout lu, j'espère que vous avez une solution
