Fichiers et programmes par défaut [Résolu]

Signaler
Messages postés
20
Date d'inscription
lundi 30 octobre 2006
Statut
Membre
Dernière intervention
5 août 2009
-
Messages postés
2116
Date d'inscription
samedi 8 novembre 2003
Statut
Contributeur
Dernière intervention
6 octobre 2012
-
Je viens de créer une petite application qui génère des fichiers ayant une certaine extension.
J'aimerai que l'on puisse ouvrir ces fichiers directement avec le logiciel..(à l'ouverture du fichier par double click, il va ouvrir le logiciel et charger le fichier)
Je pensais au tableau argv mais après quelques tests, apparement ce n'est pas ça.
En recapitulant, est-il possible (et si oui, comment) de récupérer le fichier passé en ligne de commande (je suppose que windows fait qqchose du type "nom_du_programme nom_du_fichier.ext") directement dans un programme java ?

Merci d'avance,
Bonne prog

7 réponses

Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
100
Tu peux toujours faire un raccourci qui ouvrira ton prog avec sa ligne de commande remplie, ou faire un exe de ton jar (il existe plusieurs outils pour faire cà sur le net), après faut voir si ces exe récupère bien la ligne de commande !
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
100
Il s'agit bien du argv, mais cela te permettra uniquement de récupèrer le fichier passé par une ligne de commande, et non de lancer ton prog en double cliquant sur le fichier avec l'extension voulu !

Pour lancer ton prog selon le type de fichier, il faut toucher à la base de registre de windows, et là je laisse ceux qui connaissent jni te répondre, perso, je ne sais pas faire en java.
Messages postés
20
Date d'inscription
lundi 30 octobre 2006
Statut
Membre
Dernière intervention
5 août 2009

Pour ce qui est du registre, ce n'est pas le problème, l'api jniregistry est assez simple. Mais j'ai fait un test, j'ai un programme java tout simple du type:
    public static void main(String[] args) {

        for( String s : args){

            System.out.println(s);

        }

    }

Je fait donc un click droit sur un fichier quelconque, ouvrir avec, je selectionne mon jar, et ça me sort une erreur du type "Ceci n'est pas une application win32 valide"
Je ne sais pas d'où ça vient.. Mais en faisant un "ouvrir avec" pas de problème de registre normalement..

Merci de votre aide
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
100
un jar est différent d'un exe windows : il a besoin d'être exécuté avec java :

java -jar tonJar.jar tonFichier.toto
Messages postés
20
Date d'inscription
lundi 30 octobre 2006
Statut
Membre
Dernière intervention
5 août 2009

Il est donc impossible d'ouvrir directement un fichier à l'aide d'un programme java en jar a moins de tapper directement la commande java sous le terminal ?
Messages postés
20
Date d'inscription
lundi 30 octobre 2006
Statut
Membre
Dernière intervention
5 août 2009

Ok merci bien, java n'est donc pas si cross platform que ça ...
Jvais essayer de trouver un ces logiciels, j'avais déjà javatoexe mais apparement y'a pas de passage d'arguments

Merci encore,
Flo
Messages postés
2116
Date d'inscription
samedi 8 novembre 2003
Statut
Contributeur
Dernière intervention
6 octobre 2012
10
ou tout simlpement faire une association de fichier ;o) ensuite un simple double click sur le jar le lancera.. ;o) cette association est automatique à l installation de la JRE ou du JDK
mais pour un déploiement on prefere le plus souvent un petit executable ;o) et en effet il devra etre compiler selon la platform ....

GodConan ;o)