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

Windows Discussion :

Catcher un event d'une message box ?


Sujet :

Windows

  1. #1
    Membre éclairé
    Homme Profil pro
    Consultant ERP
    Inscrit en
    Février 2004
    Messages
    644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant ERP

    Informations forums :
    Inscription : Février 2004
    Messages : 644
    Points : 785
    Points
    785
    Par défaut Catcher un event d'une message box ?
    Bonjour à tous,

    Etant donné qu'un Event est envoyé pour afficher une message box, est-il possible de catcher cet event, afin d'empêcher le lancement de cette popup ?

    Quelqu'un aurait-il un indice ?

    Merci,

    Je retourne dans MSDN
    Nul ne peut mieux connaitre la connaissance qu'elle-même.

  2. #2
    Membre éclairé
    Homme Profil pro
    Consultant ERP
    Inscrit en
    Février 2004
    Messages
    644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant ERP

    Informations forums :
    Inscription : Février 2004
    Messages : 644
    Points : 785
    Points
    785
    Par défaut
    Trouvé, et voici un exemple de code à utiliser

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    BOOL CALLBACK FzEnumThreadWindowProc( HWND hwnd, LPARAM lParam ) {
        char buffer[100] = {0};
        GetClassName( hwnd, buffer, sizeof( buffer ) - 1 );
        if( !_strcmpi( buffer, "#32770" ) ) {
            //PostMessage( hwnd, WM_CLOSE, 0 , 0 );
            SendMessage( hwnd, 0x10, 0, 0 );
        }
        return TRUE;
    }
    
    /** 
     * @brief Permet de supprimer toutes les fenêtres windows de type Dialog ( Message Box )
     */
    VOID WINAPI DialogCloser( ) {
        // Obligation de récupérer un snapshot du processus courant ( 0 )
        HANDLE hSnapshot = INVALID_HANDLE_VALUE;
        DWORD processId = GetCurrentProcessId();
    
        
        hSnapshot = CreateToolhelp32Snapshot( TH32CS_SNAPALL , processId );
        if( hSnapshot == INVALID_HANDLE_VALUE ) {
            return;
        }
        THREADENTRY32 item;
        item.dwSize = sizeof( THREADENTRY32 );
    
        // Pour tous les threads, on vérifie qu'il n'y a pas une fenêtre d'ouverte
        if( Thread32First( hSnapshot, &item ) ) {
            do {
                // Pour toutes les fenêtres appartenant à un thread on réalise une opération
                if( item.th32OwnerProcessID == processId ) {
                    EnumThreadWindows( item.th32ThreadID, FzEnumThreadWindowProc, 0 );
                }
            } while( Thread32Next( hSnapshot, &item ) );
        }
        CloseHandle( hSnapshot );
    }
    Nul ne peut mieux connaitre la connaissance qu'elle-même.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Personnaliser une message box
    Par nico_pouchet dans le forum Windows Forms
    Réponses: 6
    Dernier message: 25/06/2007, 19h43
  2. afficher une message box a parti d'une console
    Par lermit dans le forum Shell et commandes GNU
    Réponses: 6
    Dernier message: 14/05/2007, 15h18
  3. Formatage d'une message box
    Par Destiny dans le forum Access
    Réponses: 7
    Dernier message: 19/02/2007, 15h05
  4. [C/C++] afficher des doubles dans une message box
    Par lalaurie40 dans le forum MFC
    Réponses: 1
    Dernier message: 24/05/2005, 14h55
  5. afficher une "message box"
    Par requiemforadream dans le forum ASP
    Réponses: 2
    Dernier message: 19/04/2005, 16h11

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