Programme en tache de fond comme gaim au autre...

Programme en tache de fond comme gaim au autre... - C - Programmation

Marsh Posté le 01-05-2005 à 09:21:03    

Bonjour !
 
Je cherche à rendre mon programme utilisable en tache de fond. Je souhaiterai intercepté un raccourcit clavier même si mon programme est en tache de fond.
Je suis sous linux et je développe en C/C++.
J'aimerai par ailleurs que mon programme apparaisse comme gaim... j'espère être assez clair.
 
Merci de votre aide. Si je n'ai pas été assez clair, n'hésitez pas à me demander des précisions.
 
David

Reply

Marsh Posté le 01-05-2005 à 09:21:03   

Reply

Marsh Posté le 01-05-2005 à 09:24:17    

c'est quoi le C/C++ ?

Reply

Marsh Posté le 01-05-2005 à 09:27:48    

davouB a écrit :

J'aimerai par ailleurs que mon programme apparaisse comme gaim...
 j'espère être assez clair.
 
Merci de votre aide. Si je n'ai pas été assez clair, n'hésitez pas à me demander des précisions.


C'est quoi gaim ?
 
Sous Linux, pour qu'un programme tourne en tache de fond, on le lance avec & à la fin de ligne de commande, non ?


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Marsh Posté le 01-05-2005 à 09:27:54    

Citation :

c'est quoi le C/C++ ?


 
C'est du procédural objet, c'est concept tu peux pas comprendre.
 
 
@Emmanuel > A moins qu'il ne parle de le laisser tourner comme daemon ?
Sinon pareil : c'est quoi gaim ? D'après le nom on dirait un aim programmé avec la lib gtk ?


Message édité par Elmoricq le 01-05-2005 à 09:29:08
Reply

Marsh Posté le 01-05-2005 à 09:29:06    

Elmoricq a écrit :

Citation :

c'est quoi le C/C++ ?


C'est du procédural objet, c'est concept tu peux pas comprendre.


On compte donc sur toi pour nous l'expliquer...
 


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Marsh Posté le 01-05-2005 à 09:31:24    

Emmanuel Delahaye a écrit :

On compte donc sur toi pour nous l'expliquer...


 
Très simple : il faut compiler du C avec un compilateur C++.  
Dans ton programme C écrit en procédural, il faut user et abuser de toutes les spécificités du C++, mais écrit en C.
Bien sûr, tu peux compléter ça avec un objet insignifiant ou deux qui ne sont là que pour utiliser le principe des exceptions. Histoire de faire un peu de C++ quand même.
 
J'ai déjà vu des programmes comme ça, c'est vraiment chouette à lire, tu devrais essayer.
 
 
EDIT : recherche sous Google : gaim est bien un logiciel de messagerie instantannée, et ne se limite pas (ou plus je dirais, vu le nom) à AIM.


Message édité par Elmoricq le 01-05-2005 à 09:33:12
Reply

Marsh Posté le 01-05-2005 à 09:34:43    

C++ est multi paradigmatique

Reply

Marsh Posté le 01-05-2005 à 09:40:04    

Paradigmatique pourquoi pas, mais "multi paradigmatique" faut m'expliquer (spas du second degré), parce que d'après la définition un paradigme c'est déjà un ensemble de formes... ?


Message édité par Elmoricq le 01-05-2005 à 09:40:30
Reply

Marsh Posté le 01-05-2005 à 09:46:43    

paradigme procedural, paradigme objet, ...

Reply

Marsh Posté le 01-05-2005 à 10:15:53    

Elmoricq a écrit :

Très simple : il faut compiler du C avec un compilateur C++.


Marche pas.
 
http://david.tribble.com/text/cdiffs.htm


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Marsh Posté le 01-05-2005 à 10:15:53   

Reply

Marsh Posté le 01-05-2005 à 10:30:27    

**sigh**
 
Ca "marche" jusqu'à un certain point. Même le code pourri a ses limites.

Reply

Marsh Posté le 01-05-2005 à 10:40:58    

Elmoricq a écrit :

**sigh**
 
Ca "marche" jusqu'à un certain point. Même le code pourri a ses limites.


De quel code pourri tu parles ?
 


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Marsh Posté le 01-05-2005 à 10:42:24    


Justement, le fait que les 3 langages (C Ansi, C99 et C++98 ou 2003) soient incompatibles fait que l'on préfére utiliser des techniques sûres et éprouvées comme:

Code :
  1. #define TRUE 1
  2. #define FALSE 0
  3. #define BOOL unsigned int


 :whistle:

Reply

Marsh Posté le 01-05-2005 à 10:53:19    

Lam's a écrit :

Justement, le fait que les 3 langages (C Ansi, C99 et C++98 ou 2003) soient incompatibles fait que l'on préfére utiliser des techniques sûres et éprouvées comme:

Code :
  1. #define TRUE 1
  2. #define FALSE 0
  3. #define BOOL unsigned int


 :whistle:


Je n'ai jamais ressenti le besoin d'utiliser les bool et autre TRUE FALSE en C. Par définition une expression retourne 0 ou 1, ça me suffit.


   int mesure = lire_capteur();
   int alarme = mesure > SEUIL;
 
   if (alarme)
   {  
      bip();
   }


Ou avec hytérésis:


   int alarme = 0;
   ...
 
   int mesure = lire_capteur();
   if (!alarme)
   {
      alarme = mesure > SEUIL_DECLENCHEMENT;
      if (alarme)
      {
         start_bip();
      }
   }
   else
   {
      alarme = !(mesure < SEUIL_RETOUR);
      if (!alarme)
      {
         stop_bip();
      }
   }


Je ne vois pas trop l'intérêt d'écrire des choses plus compliquées que ça.


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Marsh Posté le 01-05-2005 à 11:23:04    

Bah tu as un "int alarme = 0;" qui serait peut-être moins ambigu si c'était:

_Bool alarme = false;

(en particulier, tu indiques à l'avance au lecteur quel est le champ des valeurs auquel on s'attend).
 
Je fais très peu de C, mais je suis ravi de pouvoir utiliser le type bool du C++...

Reply

Marsh Posté le 01-05-2005 à 13:21:06    

Je souhaiterai faire un deamon... Quelqu'un peu me donner un coup de main ?

Reply

Marsh Posté le 01-05-2005 à 13:57:40    

man daemon ;)

Reply

Marsh Posté le 01-05-2005 à 14:08:49    

davouB a écrit :

Je souhaiterai faire un deamon... Quelqu'un peu me donner un coup de main ?


 

Code :
  1. int main(void)
  2. {
  3.     while (1)
  4.     {
  5.         // Ici il faut faire plein de trucs que toi seul juges utile
  6.     }
  7.     return(0);
  8. }


 
Voilà, t'as ton deamon !


Message édité par Sve@r le 01-05-2005 à 14:09:27

---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Reply

Marsh Posté le 01-05-2005 à 15:53:42    

sigmatador a écrit :

p-e un fork() aussi avant le while histoire de rendre la main au shell ^^


 
Plein d'autres choses encore ... Mais je pense que c'était ironique de la part de sve@r
daemon() quoi :o

Reply

Marsh Posté le 01-05-2005 à 16:12:29    

lire le linux mag de ce mois ci :o


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed