La Taskbar

Résolu
fdouieb Messages postés 264 Date d'inscription vendredi 12 décembre 2003 Statut Membre Dernière intervention 12 juin 2013 - 11 mai 2005 à 10:41
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 - 26 oct. 2005 à 21:30
Bonjour,



J'ai une application de contrôle qui tourne en permanence sur mon ordi. Elle
est obligatoire pour mois et ne consonne pratiquement aucune ressource.
Cependant elle s'inscrit sur la Taskbar. Mon but serait qu'elle continue bien
sur à tourner mais que je puisse la rendre non visible dans la Taskbar.



Faire l'équivalent en C# de "ShowInTaskbar = false", le problème vous
l'aurait compris c'est que pour mois cette application ce résume à un exécutable.



Merci

13 réponses

cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
11 mai 2005 à 10:54
Salut,

Je crois que tu peux utiliser /library/en-us/winui/winui/windowsuserinterface/windowing/windows/windowreference/windowfunctions/showwindow.asp ShowWindow avec SW_HIDE (valeur 0) comme commande.

[DllImport("user32.dll")]
private static extern bool ShowWindow(
IntPtr hWnd,
int nCmdShow
);
private const int SW_HIDE 0; >
ShowWindow(leHandleDeLaFenetreAMasquer, SW_HIDE);

Cocoricoooooooo !!!!
coq
MVP Visual C#
3
TheSaib Messages postés 2367 Date d'inscription mardi 17 avril 2001 Statut Membre Dernière intervention 26 décembre 2007 23
11 mai 2005 à 11:58
Ou sinon tu fait un service plutot qu'une application standard

::|The S@ib|::
MVP C#.NET
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
11 mai 2005 à 12:02
Oui mais là ce n'est pas son application à lui, donc il ne peut pas :-)

Cocoricoooooooo !!!!
coq
MVP Visual C#
0
TheSaib Messages postés 2367 Date d'inscription mardi 17 avril 2001 Statut Membre Dernière intervention 26 décembre 2007 23
11 mai 2005 à 12:11
J'ai pas vu que c'etais une appli tierce

::|The S@ib|::
MVP C#.NET
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
fdouieb Messages postés 264 Date d'inscription vendredi 12 décembre 2003 Statut Membre Dernière intervention 12 juin 2013 3
11 mai 2005 à 12:12
Re Bonjour

Voici mon code


Process[] procs = Process.GetProcesses();



foreach (Process proc
in procs)
{



if (proc.ProcessName.Substring(0, 2) == "Pa")


{


// MessageBox.Show(proc.ProcessName, "");


ShowWindow(proc.Handle, SW_HIDE);


}


}

le problem c'est qui ne se passe rien. Je reccupere bien le handle de la fenetre. En effet si j'utillise la fonction proc.Kill() il tue le process
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
11 mai 2005 à 12:14
Je pense que tu dois plutôt utiliser Process.MainWindowHandle.

Cocoricoooooooo !!!!
coq
MVP Visual C#
0
fdouieb Messages postés 264 Date d'inscription vendredi 12 décembre 2003 Statut Membre Dernière intervention 12 juin 2013 3
11 mai 2005 à 12:19
Excuse moi Coq, mais j'ai déjà tester aussi avec MainWindowHandle
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
11 mai 2005 à 12:25
Ah, ça devient donc déjà moins drôle :p
Essaie de voir avec Spy++ où se situe la fenetre qui s'affiche dans la barre des tâches et récupérer des infos sur sa classe (ou autre info unique qui ne varie pas entre les lancements de l'appli)
Tu devrais ainsi pouvoir récupérer son handle via FindWindow/FindWindowEx.

Cocoricoooooooo !!!!
coq
MVP Visual C#
0
fdouieb Messages postés 264 Date d'inscription vendredi 12 décembre 2003 Statut Membre Dernière intervention 12 juin 2013 3
11 mai 2005 à 12:37
Je ne connais pas SPY++ sur l'aide en ligne il sont +tot laconique
0
fdouieb Messages postés 264 Date d'inscription vendredi 12 décembre 2003 Statut Membre Dernière intervention 12 juin 2013 3
11 mai 2005 à 12:50
Excuse moi coq, je ne sais pas pourquoi mais avec MainWindowHandle cela fonctionne maintenant

en grand merci a toi et a TheSaid

A+
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
11 mai 2005 à 13:04
Spy++ est un outil fournis avec VS2003 :-)

Cocoricoooooooo !!!!
coq
MVP Visual C#
0
bucherb Messages postés 412 Date d'inscription lundi 26 mai 2003 Statut Membre Dernière intervention 13 août 2007
26 oct. 2005 à 14:06
Moi j'ai une ptiote question dans le même genre, mais si on souhaite savoir si un process est visible dans la barre des tâches (pour faire un genre de explorer.exe) tu connais le nom de la fontion API ?

-------------------------
Trambert le vert
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
26 oct. 2005 à 21:30
En testant la présence du style étendu WS_EX_APPWINDOW il me semble.
Voir GetWindowLong/GetWindowLongPtr.

/*
coq
MVP Visual C#
*/
0
Rejoignez-nous