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

API, COM et SDKs Delphi Discussion :

Ajouter une tâche personnalisé dans la barre des tâches Windows 7


Sujet :

API, COM et SDKs Delphi

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2003
    Messages : 51
    Points : 60
    Points
    60
    Par défaut Ajouter une tâche personnalisé dans la barre des tâches Windows 7
    Bonjour les gens,


    Sur une application, jai besoin de mettre dans le menu de la barre des tâches, les actions les plus utilisées et les actions favorites.

    N'écoutant que mon courage, j'ai été voir mon ami google qui m'a renseigné ce tutorial (très bien fait au demeurant, merci à Franck Soriano).

    Par contre, je crains de ne pas avoir tout compris.
    Si j'ai bien saisi, l'utilisation de linterface "IShellLink" ne permet pas de rattacher à la tâche une méthode de mon projet ou un message...
    Au contraire, si je suis bien l'exemple du tutorial, il me faut passer un chemin vers un exécutable et si besoin des paramètres lignes de commande.

    Donc la question est :
    Comment puis-je indiquer que je souhaite exécuter une méthode de l'instance active de l'application et non pas exécuter une nouvelle instance ?

    Faut-il partir sur un test d'existence du process et ensuite en traiter des paramètres ligne de commande (cela me semble un peu beaucoup tirer par les cheveux ) ?

    J'ai beau me triturer le neurone gauche, je vois pas trop .

    Quelqu'un aurait-il une idée ?


    PS : réalisé avec Delphi 2010 Professionnel

  2. #2
    Expert confirmé

    Profil pro
    Leader Technique
    Inscrit en
    Juin 2005
    Messages
    1 756
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Leader Technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 1 756
    Points : 4 173
    Points
    4 173
    Par défaut
    Comment puis-je indiquer que je souhaite exécuter une méthode de l'instance active de l'application et non pas exécuter une nouvelle instance ?
    Je ne crois pas que ce soit possible. La seule chose qu'on puisse définir dans la Jumplist c'est un raccourci Windows.

    Faut-il partir sur un test d'existence du process et ensuite en traiter des paramètres ligne de commande (cela me semble un peu beaucoup tirer par les cheveux ) ?
    ca semble tiré par les cheveux, mais c'est la chose qui me vienne à l'esprit.
    Je vois différente façon de le mettre en oeuvre :
    - Faire de l'appli un serveur Ole : Au moment de son démarrage, elle s'incrit dans la ROT (Running Object Table). Les tâches de la JumpList lancerais un autre exe qui en fonction des paramètres d'appels récupérerait l'appli dans la ROT, et invoquerait la méthode voulue. Il s'agirrait de simple client OLE-Automation.
    - Autre solution un peu dans le même genre, le deuxième exe rechercherait la fenêtre principale de l'application et lui posterait un message Windows pour lui dire de lancer un traitement particulier.
    - Pratiquement la même chose : L'appli principale crée un pipe nommé. L'exe satellite ouvre le pipe et écrit l'équivalent du message Windows sur le pipe.
    - ...

    Enfin, je n'en parle pas dans le tuto mais la barre de tâches de Windows possède encore une autre fonctionnalité que la JumpList : La Thumbnail Toolbars. Elle permet d'associer une barre d'outils à l'icone de l'application dans la barre des tâches : Par exemple, sur le média player, tu disposes directement des boutons Marche et Arrêt...

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2003
    Messages : 51
    Points : 60
    Points
    60
    Par défaut
    Merci pour la réponse.


    Je pense que je vais d'abord partir sur lqa seconde solution. Faire un second exécutable qui enverra un message à l'application d'origine et se détruira à la suite.



    Je regarderai par la suite pour la Thumbnail qui as l'air assez intéressante à exploiter.


    Dès que je résussi à faire tourner quelque chose de correct, je le mettrai à disposition, cela peut sans doute intéresser d'autres personnes.

    Bonne journée.

Discussions similaires

  1. Réponses: 0
    Dernier message: 04/07/2011, 19h39
  2. Ajouter une barre d'outil dans la barre des tâches
    Par koKoTis dans le forum Windows
    Réponses: 1
    Dernier message: 30/05/2007, 11h04
  3. Réponses: 2
    Dernier message: 22/11/2006, 19h19
  4. Ajouter une icône d'une application dans le barre des tâches
    Par Lorponos dans le forum Autres Logiciels
    Réponses: 11
    Dernier message: 13/05/2006, 19h41
  5. Réponses: 7
    Dernier message: 27/10/2005, 14h24

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