Partage
  • Partager sur Facebook
  • Partager sur Twitter

Associer une icone a une extension

besoin d'aide

    27 novembre 2010 à 19:46:45

    Bonjour les Zéro!

    je suis a la recherche de lanterne pour m’éclairer le chemin. ^^

    plus sérieusement j'aurais besoin de quelqu’un qui me dise comment on peut faire pour associer une icone a une extension de fichier.

    je m'explique:
    j'ai une icone:
    Elle ressemble a ça:
    Image utilisateur


    et j'ai une extension de fichier appeler .phi.

    j'aimerais que l'icone des fichiers .phi on comme icone celle en secret (l'image phi pour l’extension .phi).

    en gros comme l'icone des fichiers .(x)html.

    je veut préciser que le programme est en java et je ne sais pas si ça peut se faire.

    J'ai chercher, sans succès pour dire, mais j'ai quand même trouvé ça.

    Mais je ne comprend strictement rien au script VB.

    sinon il y a la partie du tuto de M@théo sur le C. Mais je ne sais pas si c'est compatible avec le java.


    Voila dans l'attente d'une réponse,

    Cordialement Snowert.
    • Partager sur Facebook
    • Partager sur Twitter
      27 novembre 2010 à 20:04:05

      Tu veux que tous tes fichiers .phi aient cette icône ? Si c'est ça, ça n'a rien à voir avec ton programme, il faut que tu ailles chercher dans le panneau de configuration de windows (puisque j'imagine que tu es sous windows).
      • Partager sur Facebook
      • Partager sur Twitter
        27 novembre 2010 à 20:09:04

        Salut Maxibolt, Merci de ta réponse rapide!

        oui je suis sous windows et les utilisateur du programmes aussi normalement.

        Mais est t'il possible que tout le monde ai l'icone? même par le bias d'une installation.

        Par exemple on installe le programme et les fichiers .phi on tous l'icone?

        Je peut essais de faire celui que pose M@athéo mais c'est en C donc peut être pas compatible avec java(je n'en sais rien).

        Merci!


        ps:vous me le dites si j'expose mal mon problème
        • Partager sur Facebook
        • Partager sur Twitter
          27 novembre 2010 à 21:17:54

          Bonjour,
          sous windows, il s'agit de créer/modifier la clef de registre associée a cette extension.
          • Partager sur Facebook
          • Partager sur Twitter
          ** La doc, c'est comme le PQ: ça sert à se démerder tout seul **
            27 novembre 2010 à 21:20:26

            Merci Breizhbugs,

            mais comment faire?

            et quand on installe le programme la modification seras mise?
            • Partager sur Facebook
            • Partager sur Twitter
              27 novembre 2010 à 22:48:58

              Bonsoir,

              Il faut ajouter les clés suivantes au registre:
              HKEY_CLASSES_ROOT\.phi
              Puis créer une clé sans nom de type String et mettre NomDuType comme valeur. NomDuType est alors le nom interne du type de fichier que l'on veut créer. Il doit être unique; de même que l'extension...

              Ensuite, la clé HKEY_CLASSES_ROOT\NomDuType
              Idem: clé sans nom de type String puis Nom Du Type (ce sera le nom affiché dans l'Explorateur Windows).

              Dans un troisième temps: HKEY_CLASSES_ROOT\NomDuType\DefaultIcon. Clé de type string sans nom avec le chemin absolu vers l'icône pour la valeur.

              Et pour terminer, HKEY_CLASSES_ROOT\NomDuType\shell\open\command. Toujours pareil pour la clé avec comme valeur cette fois le nom du programme à associer à ce type de fichier.

              En passant par un installateur InnoSetup, cela donnerait:
              [Setup]
              ChangesAssociations=yes
              
              [Registry]
              Root: HKCR; Subkey: ".myp"; ValueType: string; ValueName: ""; ValueData: "MyProgramFile"; Flags: uninsdeletevalue
              Root: HKCR; Subkey: "MyProgramFile"; ValueType: string; ValueName: ""; ValueData: "My Program File"; Flags: uninsdeletekey
              Root: HKCR; Subkey: "MyProgramFile\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "{app}\MYPROG.EXE,0" //Récupération de l'icône du programme. Doit marcher avec un chemin vers le fichier d'icône directement (à vérifier).
              Root: HKCR; Subkey: "MyProgramFile\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\MYPROG.EXE"" ""%1"""
              • Partager sur Facebook
              • Partager sur Twitter
                28 novembre 2010 à 8:13:15

                Merci fumble!

                l'installation est faite avec install créator de clickteam

                ça marcherais aussi?


                j'ai compris comment on fait mais on modifie comment la base de registre?et c'est sans risque?
                • Partager sur Facebook
                • Partager sur Twitter
                  28 novembre 2010 à 10:42:38

                  Si tu sais ce que tu fais et que l'extension n'existe pas déjà dans la base de registre (risque d'écrasement de la clé déjà existante), je ne vois pas de problème.

                  Par contre, il faut avoir la version Pro (payante) d'InstallCreator pour écrire dans la base de registre:
                  http://www.clickteam.fr/installcreator (onglet Caractéristiques/Versions).

                  Tu devrais donc te plutôt te tourner vers InnoSetup ou NSIS qui sont tous les deux totalement gratuits.
                  • Partager sur Facebook
                  • Partager sur Twitter
                    28 novembre 2010 à 11:59:20

                    ha d'ac

                    le programme est pas exactement a moi et comme il utilise plusieur type de fichier et avec une icone c'est plus facile.

                    sinon inno setup est facile?

                    on peut verifier la base de registre?l'extention existe on peut l'utiliser...mais ça fait quoi si ça s'ecrase?
                    • Partager sur Facebook
                    • Partager sur Twitter
                      28 novembre 2010 à 18:43:38

                      Oui c'est assez facile à utiliser, d'autant plus qu'il y a un assistant qui te mâche une bonne partie du travail.

                      Pour ne créer la clé que si elle n'existe pas il suffit d'ajouter Flags: createvalueifdoesntexist à chaque ligne du script où tu écris dans le registre.

                      Par exemple:
                      Root: HKCR; Subkey: ".myp"; ValueType: string; ValueName: ""; ValueData: "MyProgramFile"; Flags: uninsdeletevalue

                      Devient:
                      Root: HKCR; Subkey: ".myp"; ValueType: string; ValueName: ""; ValueData: "MyProgramFile"; Flags: createvalueifdoesntexist, uninsdeletevalue


                      Si tu écrases une valeur du registre pour les extensions de fichier (.mp3 par exemple), si ce type de fichier s'ouvrait jusqu'à présent avec VLC, il s'ouvrira avec ton application.

                      Mais bon, pour l'extension .phi, je ne pense pas qu'il y ait de souci à se faire.

                      Par contre, modifier certaines clés de registre sans savoir exactement ce qu'on fait peut planter irrémédiablement le système ! Prudence donc.
                      • Partager sur Facebook
                      • Partager sur Twitter
                        28 novembre 2010 à 19:37:26

                        oki merci!

                        je vais proposer tout ça au créateur!

                        par contre je vien de m'apercevoir de ça:

                        normal
                        Image utilisateur

                        dans l'assistant
                        Image utilisateur

                        • Partager sur Facebook
                        • Partager sur Twitter
                          28 novembre 2010 à 20:10:05

                          Le bouton registre dans le cas que tu me montres ne permet que de récupérer la valeur stockée dans une clé du registre pour s'en servir comme chemin par défaut pour installer le programme.

                          Un petit exemple:
                          Image utilisateur

                          En aucun cas, cela peut te servir pour tout ce que j'ai expliqué auparavant.
                          • Partager sur Facebook
                          • Partager sur Twitter
                            28 novembre 2010 à 20:23:35

                            d'ac merci

                            je vais essayer ce que tu a dit!
                            • Partager sur Facebook
                            • Partager sur Twitter

                            Associer une icone a une extension

                            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                            • Editeur
                            • Markdown