none
Gestion de l'ouverture de fichiers par double clic à l'aide de la bibliothèque Qt RRS feed

  • Question

  • Bonjour à tous,

    Je suis développeur de niveau assez intermédiaire, je programme depuis environ un an et demi, et j'ai rencontré des problèmes dans le développement d'un éditeur de texte.

    En fait, j'ai ajouté un compilateur à Visual C++ de manière à ce qu'il puisse compiler les éléments de cette bibliothèque, d'où le chois de la zone de mon message.

    Revenons à mon problème :
    Quand vous double-cliquez sur l'icône d'un fichier texte (.txt), le fichier s'ouvre et vous n'avez plus qu'à faire ce que vous voulez.
    Quand je passe par là avec mon programme, le programme s'ouvre... vierge : la zone de texte est vide tandis que si j'utilise l'actions "Ouvrir" que j'ai faite, le programme charge dans la zone de texte le document texte correctement.

    Donc voici ma question :
    Quel est le code à rajouter pour que le double-clic marche ?

    Merci d'avance !

    PS : j'ai trois fichiers de code pour mon programme :
    • main.cpp
    • Writext.cpp
    • Writext.h

    samedi 8 novembre 2008 10:49

Toutes les réponses

  • Le comportement dont vous faite part est un régis par une configuration en base de registre.

    Des bibliothèques comme les MFC permettent de cacher ce comportement avec des paradigmes de plus haut niveaux.

    Sans plus d'information sur votre projet, MFC ou pas, la nature de cet ajout de compilateur (normalement, VC++ a déjà un compilateur) ou de bibliothèque, il nous est difficile de vous aider.

    On pourrait vous expliquer les arcanes de la base de registre mais cela risque de vous noyer dans des détails inutiles.
    mercredi 12 novembre 2008 13:58
    Modérateur
  • Bonjour,

    Alors pour la bibliothèque, j'utilise Qt qui gère les fenêtres (gui).
    Visual C++ ne compile pas ce type de bibliothèque donc j'ai dû rajouter le compilateur adapté.

    Merci d'avance de votre aide...
    samedi 15 novembre 2008 15:54
  • Je ne connais pas Qt mais je ne pense pas qu'il utilise un compilateur particulier mais plutôt un préprocesseur en plus des bibliothèques, mais la question n'est pas là.

     

    Le comportement que vous décrivez correspond à une association entre une extension comme ".txt" et votre programme.

    Par exemple, en MFC, c'est une valeur dans une ressource du programme qui donne l'extension avec laquelle le programme MFC est associé. En lancement du programme ou à son installation, un certain nombre de valeur de la registry son modifier pour faire cette association.

     

    Regardez si, comme je le pense, Qt a un mécanisme équivalent pour l'association d'une extension à votre programme.

     

    Si ce n'est pas le cas, il faut que vous regardiez du coté de la valeur de registry "open" dans les clés des extensions de fichiers dans la registry, dans MSDN.

    mardi 18 novembre 2008 00:57
    Modérateur