Empécher la fermeture de la console vista

Résolu
Bonjour,
Je voudrais savoir la ligne de code C permettant d'exécuter un programme en console sans que l'utilisateur puisse la fermer, en grisant la croix en haut a droite par exemple, en la désactivant.
Svp soyez précis dans vos réponses merci...
Configuration: Windows Vista
Firefox 3.0.8

5 réponses

  1. Modérateur
    Voici ce que j'arrive à faire, c'est pas terrible mais c'est un début...
    Quand on clique sur la croix, le programme intercepte le signal SIGBREAK et effectue les instructions demandées dans "void Intercepter(sig_atomic_t);" par exemple pour désallouer la mémoire avant de quitter
    #include <stdio.h>
    #include <stdlib.h>
    #include <signal.h>
    
    void Intercepter(sig_atomic_t signal)
    {
         fprintf(stderr,"\n\nInterception du signal %ld\n\n",signal);
         system("PAUSE");
         exit(1);
    }
    
    int main(void)
    {
        signal(SIGBREAK,&Intercepter);
    
    // début du programme principal
    
        int n=1;
        while (n!=0)
        {
              fprintf(stderr,"Entrer un entier (0 pour quitter) : ");
              scanf("%ld",&n);
              fprintf(stderr,"\n\t%ld\t%ld\n\n",n,n);
        }
              
        return 0;
    }
    1
    1. Modérateur
      J'avoue ne pas connaitre énormément le C, mais récemment j'ai travaillé en C sous Linux et j'utilisai <signal.h> pour contrôler la fermeture Ctrl+C du processus...
      Si il y a un équivalent avec Windows peut-être dois-tu te tourner vers ce genre d'outils pour contrôler le signal de fermeture de la console...

      Désolé de ne pas être plus précis, je crois que c'est quand même un début...
      0
      1. Merci je vais partir sur ca...
        Si quelqu'un a une réponse plus complète merci d'avance...
        0
        1. je viens d'essayer et le programme fonctionne comme si ne rien n'était et la fermeture de la console est toujours possible...
          0
          1. a oui pas mal merci beaucoup !!!
            0