2010-05-27 4 views
2

J'ai une idée pour écrire une application barre multimotor dans C# pour Windows XP. Alors, est-ce que quelqu'un a des informations sur la façonbarre des tâches Multimonitor dans .Net

  • pour mettre une barre des tâches sur le deuxième moniteur,
  • pour le faire utiliser des styles de fenêtres,
  • pour empêcher aplications en cours d'exécution sur le second moniteur à apparaître en défaut barre des tâches ,
  • ainsi de suite ...

Toute aide serait utile ...)))

+2

Au cas où vous ne l'auriez pas trouvé auparavant, cela a été fait, et très bien dans .Net: http://www.binaryfortress.com/displayfusion/ ce n'est pas une petite entreprise, vous pouvez donc vouloir utiliser un existant solution comme ça. –

+1

Bien que cette solution soit bonne, elle n'est pas open source et n'est même pas gratuite. De plus, ça ne peut pas satisfaire ma volonté de le faire moi-même. – kalan

+1

Tout va bien, juste pour vous faire savoir qu'il y a des choses là-bas et c'est une énorme entreprise de faire ce que vous voulez, ce n'est pas un projet de 2 jours. Tu vas passer des mois :) Je pense juste qu'il est préférable de savoir au moins qu'avant d'y entrer, c'est tout. –

Répondre

2

Vous pouvez appeler P/Appeler SHAppBarMessage() pour créer une barre des tâches. Le APPBARDATA.hWnd dont vous aurez besoin pourrait simplement être la poignée d'une classe Form. Tout va aussi loin que ce que vous affichez. Obtenir les notifications dont vous aurez besoin pour que la barre des tâches affiche des fenêtres actives sera beaucoup plus difficile. Vous devrez utiliser le hook WH_SHELL global, défini par SetWindowsHookEx() pour recevoir les notifications dont vous aurez besoin. Vous ne pouvez pas définir ce hook en C#, il nécessite une DLL non managée que vous pouvez injecter dans un processus. Vous trouverez une aide cruciale dans this project.

L'exécution de la tâche normale de Windows ne sera pas possible à moins que vous ne trouviez d'une manière ou d'une autre les informations non documentées dont vous aurez besoin. Microsoft ne documente pas cela pour une bonne raison, la barre des tâches est une partie importante de la façon dont ils innovent sur le look-and-feel de Windows. Assez visible dans Win7. Ils ne veulent pas que le code dépende de cela, ils auraient un travail presque impossible de garder la prochaine version de Windows compatible. Je vous recommande de désactiver complètement la barre des tâches de Windows et de la remplacer par la vôtre.

Questions connexes