Lister les fenêtres ouvertes [Résolu]

Messages postés
289
Date d'inscription
dimanche 10 août 2003
Dernière intervention
28 février 2009
- 21 juil. 2006 à 19:52 - Dernière réponse :
Messages postés
289
Date d'inscription
dimanche 10 août 2003
Dernière intervention
28 février 2009
- 22 juil. 2006 à 16:12
Bonjours ! Voilà, je fais un anti-pop up et je dois connaîtres quelles sont les fenêtres ouvertes ( et non les processus ), et savoir comment acceder a leur propriété ( genre le titre,mais je pense savoir comment faire, mais seulement avec les DLL COM et si quelqu'un sait comment le faire en pur DotNet 2.0... ) et comment les fermer. Je sais que j'en demande beaucoup mais qui ne tente rien n'a rien alors...

Merci d'avance ! Bye ++
-=Ar$£nik=-
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Dernière intervention
2 août 2014
- 21 juil. 2006 à 20:05
3
Merci
Salut,

A ma connaissance aucun wrappage public n'a été fait dans la BCL pour donner accès à ce genre d'informations. Tu devras forcément passer par du PInvoke sur l'API de gestion des fenêtres.

/*
coq
MVP Visual C#
CoqBlog
*/

Merci cs_coq 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 88 internautes ce mois-ci

Commenter la réponse de cs_coq
Meilleure réponse
Messages postés
303
Date d'inscription
samedi 22 octobre 2005
Dernière intervention
2 novembre 2008
- 22 juil. 2006 à 00:08
3
Merci
Pour le nom d'une fenetre tu as comme API : GetWindowsText et pour fermer une fenetre tu a l'api CloseWindow

http://www.secretswindows.com/index.php?rubrique=API&ssrubrique=A&ID=1&page=./api/detailfonction.php

Merci iow4 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 88 internautes ce mois-ci

Commenter la réponse de iow4
Messages postés
289
Date d'inscription
dimanche 10 août 2003
Dernière intervention
28 février 2009
- 22 juil. 2006 à 16:12
0
Merci
J'ai réussi, pour ceux que ça interesse :
        // Déclarations API et délégué :
        // --------------------------------------------------------------------------------------------------------
       
        [DllImport("user32")]
        public static extern int EnumWindows(EnumWindowsProc lpEnumFunc, int lParam);

        [DllImport("user32.dll")]
        public static extern int GetWindowText(IntPtr hWnd, [Out] StringBuilder lpString, int nMaxCount);
       
        [DllImport("user32.dll")]
        public static extern int GetWindowTextLength(IntPtr hWnd);
       
        [DllImport("user32.dll")]
        public static extern int SendMessage(int hWnd, uint Msg, int wParam,int lParam );
       
        public const int WM_SYSCOMMAND = 0x0112;
        public const int SC_CLOSE = 0xF060;

        public delegate bool EnumWindowsProc(IntPtr hwnd, int lParam);
       
        // --------------------------------------------------------------------------------------------------------

       
        public string[] ProcessList;
        public IntPtr[] ProcessHandle;
       
        public int ProcessCount=0;
public void CloseWindow(string Name){
           
            for(int i=0;i

-=Ar$£nik=-
Commenter la réponse de MaxSoldier

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.