begin process at 2012 05 29 09:44:26
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Windows

 > 

System

 > 

Interception de la fermeture de windows


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Interception de la fermeture de windows

mardi 5 décembre 2006 à 15:27:47 | Interception de la fermeture de windows

laetitiavincent

Bonjour tout le monde

Encore une question de ma part

je voudrais intercepter la fin de windows pour le mettre en suspent et lancer un programme avant de fermer windows.

J'arrive à mettre l'arrêt en suspent et fermer ensuite windows mais je n'arrive pas à mettre en écoute mon application afin qu'il détecte la fin de windows Quelqu'un pourrait me dire comment faire ou me dire où je pourrais trouver l'info ?

 

Merci par avance

 Laetitia

mardi 5 décembre 2006 à 16:03:46 | Re : Interception de la fermeture de windows

vecchio56

Administrateur CodeS-SourceS
Tu reçois le message WM_QUERYENDSESSION. Si tu veux annuler la fermeture de session, tu dois retourner TRUE à ce message

_____________________________________
Un éditeur de ressources gratuit pour Windows

mardi 5 décembre 2006 à 16:07:51 | Re : Interception de la fermeture de windows

racpp

Administrateur CodeS-SourceS
Réponse acceptée !
Salut,
Dans la procédure WndProc de ta fenêtre, tu peux intercepter le message WM_QUERYENDSESSION. Pendant le traitement de ce message, tu lances ton programme et retourner 0. Il ne faut pas oublier de fermer aussitôt l'application qui lance le programme. C'est ce dernier qui se chargera de fermer Windows.
mardi 5 décembre 2006 à 16:11:34 | Re : Interception de la fermeture de windows

racpp

Administrateur CodeS-SourceS
vecchio56 >> Je pense qu'il faudra retourner FALSE pour annuler la fin de session.

mardi 5 décembre 2006 à 16:33:41 | Re : Interception de la fermeture de windows

laetitiavincent

Merci pour votre aide mais ca marche pas.
J'ai fait ca :

LRESULT CALLBACK MainWndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
    switch (uMsg)
    {
        case WM_CREATE:

            return 0;

        case WM_QUERYENDSESSION :
            interrompre_arret();
            return 0;

        case WM_DESTROY:
            interrompre_arret();
            PostQuitMessage(0);
            return 0;

        default:
            return DefWindowProc(hwnd, uMsg, wParam, lParam);
    }
}

Dans ma fonction interrompre_arret, j'utilise      AbortSystemShutdown(NULL); 
 avant de lancer mon programme.

Quand je ferme mon appli, il me fait bien la fonction interrompre_arret, et ca marche bien.
Mais quand je ferme windows ou quitte la session, il ne fait rien et ferme tout

Help please !!!!!!!!!!!!

 Laetitia

mardi 5 décembre 2006 à 16:37:05 | Re : Interception de la fermeture de windows

vecchio56

Administrateur CodeS-SourceS
racpp> Oui je me suis trompé

Normalement tu n'a pas à utiliser AbortSystemShutdown, si tu retournes 0 ca doit être bon...

_____________________________________
Un éditeur de ressources gratuit pour Windows

mardi 5 décembre 2006 à 16:51:57 | Re : Interception de la fermeture de windows

laetitiavincent

cad ?
Je ne comprends pas ce que je dois faire. Tu peux me donner encore un petit coup de pousse s'il te plait

 Laetitia
mardi 5 décembre 2006 à 17:03:02 | Re : Interception de la fermeture de windows

racpp

Administrateur CodeS-SourceS
D'après MSDN, si une application retourne 0 en réponse au message WM_QUERYENDSESSION la fermeture de Windows est annulée.

mardi 5 décembre 2006 à 17:09:07 | Re : Interception de la fermeture de windows

laetitiavincent

Oui mais justement dans mon prog, je mets bien un return 0 , comme tu peux le voir plus haut. Alors pourquoi ca ne marche pas ??????? A moins que ce n'est pas de ce return 0 que tu me parles ????

 Laetitia
mardi 5 décembre 2006 à 17:25:22 | Re : Interception de la fermeture de windows

racpp

Administrateur CodeS-SourceS
Assure-toi que ta fenêtre reçoit bien le message WM_QUERYENDSESSION en ajoutant un MessageBox(). Dans certains cas ce message n'est pas envoyé pour forcer toutes les applications à se fermer.


1 2 3

Cette discussion est classée dans : fin, windows, interception, fermeture, suspent


Répondre à ce message

Sujets en rapport avec ce message

fermeture de windows => applications? [ par spirit ] salut à tousJe voudrais savoir si en fermant windows à l'aide de mon programme, les autres applications fermeront également sans perte de données?et s C/C++ - Windows: Comment savoir les numeros de clusters de debut et de fin d'un fichiers contenu sur un disque dur ? [ par akk ] Bonjour,Voilà j'aimerai connaitre l'emplacement d'un fichier sur mon disque dur à partir d'un programme en c ?remarque : j'entends par chemin non pas interception de message windows [ par nicopouet ] Je cherche a intercepter le message windows qui sert a copier un fichier ou un dossier afin de remplacer l'utilitaire ke windows fournit pour la copie Comment empêcher la fermeture d'une application ? [ par nicolos ] Bonjour,Je voudrais savoir comment empêcher l'utilisateur de fermer une application par l'intermédiaire du gestionnaire des tâches de windows comme c' Sauvegarde a la fermeture de windows [ par PupetMaster ] Bonjour a tous,Je n'arrive pas a trouver comme faire une action avant la fermeture de windows (en l'occurence, j'aimerai ecrire une ligne dans un fich Hook fermeture Windows [ par goutbouyo ] Salut,J'essaie trouver un hook pour empêcher de fermer Windows.Existe t'il quelque chose de particulier, car j'ai essayer avec des hooks sur le focus Attente de la fin d'un processus sous Unix [ par laetitiavincent ] Bonsoir tout le mondeVoilà je voudrais lancer un processus et attendre qu'il soit fini pour que le programme continue. Sous windows, ca ne me pose pas Interception de la copie de fichier [ par alphaone ] Bonjour, pour mon projet GPL ultracopier, j'aurai besoin d'intercepter la copie de fichier (ou le déplacement) pour la faire avec mon soft (et non pas EOF avec les API Windows [ par faucheuse ] Bien le bonjour ami(e)s programmeurs et programmeuzes,Je débute avec les API Windows et j'ai une classe à faire pour le manipulation de fichier (Creer Comment trouver la fin d'un fichier avec fonctions windows [ par dante20007 ] Bonjour, je voudrais détecter la fin de mon fichier en termes de caractères.J'ai essayé avec la fonction (feof) mais elle ne me donne pas mon dernier


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,030 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales