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 :

Extension liée à un programme et récup du nom du fichier double-cliqué


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2012
    Messages : 12
    Par défaut Extension liée à un programme et récup du nom du fichier double-cliqué
    Bonjour,

    J'ai développé en WPF une mini dézipper de fichiers (zip, 7zip, rar).
    Maintenant j'aimerais faire que quand je double-clique sur un zip ou autre, cela lance mon application et que ça récupère le chemin du fichier qui a été double cliqué...

    Lier une extension à mon programme ça, c'est pas un problème. Là où ça se complique personnellement, c'est pour récupérer au lancement de l'exe une information.

    Y a-t-il le moyen de faire ceci?

    J'ai pas mal regardé à gauche et à droite et je crois que le plus gros problème que j'ai c'est de donner un nom à ce que je veux faire, et ça facilite pas les recherches...

    En tout cas merci d'avance si vous avez des idées, ou solutions

  2. #2
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2011
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2011
    Messages : 51
    Par défaut
    Bonjour,
    Tu fais clic droit sur le fichier .zip => Propriétés => S’ouvrir avec => Modifier => Parcourir, et tu choisi le fichier .exe de ton application

    et voila

    Bon courage

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2012
    Messages : 12
    Par défaut
    Citation Envoyé par Michou2000 Voir le message
    Bonjour,
    Tu fais clic droit sur le fichier .zip => Propriétés => S’ouvrir avec => Modifier => Parcourir, et tu choisi le fichier .exe de ton application

    et voila

    Bon courage

    ça c'est bon...

    c'est récupérer le nom du fichier sur lequel j'ai cliqué que je n'arrive pas à faire.

    J'ai trouvé http://www.developpez.net/forums/d12...rture-process/

    mais je vois pas comment faire pour adapter la réponse de Bluedeep à du WPF

  4. #4
    Membre émérite
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2010
    Messages
    479
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2010
    Messages : 479
    Par défaut
    Salut,
    dans le Main de ton programme tu dois avoir un paramètre de type string[].
    S'il n'existe pas créé le. Lors d'un double clic sur le fichier, si ton appli est associée à l'extension du fichier le programme se lancera en passant comme argument le nom du fichier.
    A toi de le récupérer et de le passer en argument à la classe qui fait le traitement (ci-dessous classe = From1).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    /// <summary>
            /// Point d'entrée principal de l'application.
            /// </summary>
            [STAThread]
            static void Main(string[] args)
            {
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                if (args.Length != 0)
                {
                    string fichier = args[0];
                    Application.Run(new Form1(fichier));
                }
                else
                {
                    Application.Run(new Form1());
                }
     
            }
    C'est ok comme réponse ?

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2012
    Messages : 12
    Par défaut
    Le problème en Wpf c'est qu'il n'y a pas de Main();

    Ma première fenêtre à s'ouvrir s'appelle MainWindow. Donc dans le code j'ai un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public MainWindow()
    { 
         InitializeComponent();
    }
    Et il faut qu'il soit sans paramètre sinon le programme ne démarre pas. Si je fais de la surcharge, c'est toujours le sans-paramètre qui est pris.

    J'ai fait un autre projet pas en Wpf, mais en fenêtre de commande, et là ça marche niquel, en à peine une ligne de code. Je me dit que ça doit pas être bien sorcié en Wpf.

    Mais je vais voir ce que ça donne en rentrant chez-moi.

    Je vous redis.

  6. #6
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Bonjour

    Utilise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    string commandLine = Environment.CommandLine;
    Tu récupére la ligne complète sous la forme : "MyProc param1 param2"

    Ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    string[] args = Environment.GetCommandLineArgs();
    Tu récupères un tableau dont le premier item est le nom du programme, les suivants les paramètres passés.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Récupérer un nom de fichier sans extension
    Par OxN dans le forum Général Java
    Réponses: 13
    Dernier message: 01/08/2011, 16h13
  2. Comment récupérer le nom du fichier sans l'extension ?
    Par altahir007 dans le forum Langage
    Réponses: 16
    Dernier message: 13/11/2009, 13h20
  3. Réponses: 3
    Dernier message: 30/01/2006, 16h24
  4. Réponses: 2
    Dernier message: 06/04/2005, 15h31
  5. [Tableaux] Séparer un nom de fichier de son extension
    Par Empty_body dans le forum Langage
    Réponses: 5
    Dernier message: 24/03/2005, 14h18

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