Bonjour,
Je cherche à récupérer la position (ou le déplacement) d'une souris en C (ou C++) dans un programme en mode console. Je n'ai pas besoin d'intercepter les clics. Le but est d'utiliser une souris laser pour gérer le positionnement et l'asservissement d'un robot mobile.
J'ai essayé libgpm (General Purpose Mouse Interface), mais je trouve très peu de documentation à son sujet, et l'exemple que j'ai testé ne m'a pas convaincu...
J'ai essayé de lire dans /dev/input/mice mais lorsque je (…)
Forum Programmation.c Generic Netlink
Salut,
J'essaye de me servir des fonctionnalités de la Generic Netlink pour dialoguer entre mon module noyau et des processus utilisateurs.
Je me suis inspirer de la doc http://www.linux-foundation.org/en/Net:Generic_Netlink_HOWTO et de code du noyau (taskstats.c, acpi.c) pour reproduire un exemple de base avant de l'incorporer dans mon module.
Mais je n'arrive pas à faire fonctionner cet exemple de base :
#include#include #include #include #include #include #include enum { DOC_EXMPL_C_UNSPEC = 0, DOC_EXMPL_C_ECHO, (…)
Forum Programmation.c IP Routing
Bonjour à tous,
Je cherche désespérément des indications concernant le routage Ip avec le langage C, je cherche en fait à sauvegarder et à restaurer la table de routage d'une machine.
Quelqu'un à déjà manipulé les tables de routage dans ce langage ?
Merci d'avance pour les liens ou toutes indications
Je cherche désespérément des indications concernant le routage Ip avec le langage C, je cherche en fait à sauvegarder et à restaurer la table de routage d'une machine.
Quelqu'un à déjà manipulé les tables de routage dans ce langage ?
Merci d'avance pour les liens ou toutes indications
Forum Programmation.c Forcer la vérification d'un format
Bonjour cher forum,
Je suis entrain d'implémenter une fonction avec un nombre variable de paramètre. Les 2 premiers paramètres sont de type int, le 3 est une chaîne de caractères de type format (passé à vsnprintf dans ma fonction), et il y a derrière un nombre variable de paramètres eux aussi passé à vsnprintf et qui doivent correspondre au format (un char * si on a un %s, etc...).
Ma question est: est-il possible de forcer le compilateur à vérifier (…)
Je suis entrain d'implémenter une fonction avec un nombre variable de paramètre. Les 2 premiers paramètres sont de type int, le 3 est une chaîne de caractères de type format (passé à vsnprintf dans ma fonction), et il y a derrière un nombre variable de paramètres eux aussi passé à vsnprintf et qui doivent correspondre au format (un char * si on a un %s, etc...).
Ma question est: est-il possible de forcer le compilateur à vérifier (…)
Forum Programmation.c Obtenir le numero d'un port réseau libre
Bonjour,
Je suis entrain de réaliser un système de communication inter processus. En simplifiant l'architecture on obtient cela:
un processus maitre avec un numero de port connu de tout le monde
et des processus esclave possédant un UID unique et un numero de port
la première chose que fait un processus esclave est de communiquer son UID et son port au processus maitre.
Mes processus esclaves peuvent donc utiliser n'importe quel port ouvert.
Pour obtenir un port disponible j'utilsie la (…)
Je suis entrain de réaliser un système de communication inter processus. En simplifiant l'architecture on obtient cela:
un processus maitre avec un numero de port connu de tout le monde
et des processus esclave possédant un UID unique et un numero de port
la première chose que fait un processus esclave est de communiquer son UID et son port au processus maitre.
Mes processus esclaves peuvent donc utiliser n'importe quel port ouvert.
Pour obtenir un port disponible j'utilsie la (…)
Forum Programmation.c HP
bonjour, voila mon probleme
J"ai acheter un ordinateur HP Pavillon dv6000 et mon périphérique bluetooth de fonctionne pas il ne detecte aucun autre périphérique et n'est pas détécté.
Avez vous une solution pour m'aider a configurer mon périphérique bluetouth
Merci.
PS: Je ne m'y connait pas trop sur se site et ne savait pas tro dans quel forum écrire je ne comprend strictement rien !!
J"ai acheter un ordinateur HP Pavillon dv6000 et mon périphérique bluetooth de fonctionne pas il ne detecte aucun autre périphérique et n'est pas détécté.
Avez vous une solution pour m'aider a configurer mon périphérique bluetouth
Merci.
PS: Je ne m'y connait pas trop sur se site et ne savait pas tro dans quel forum écrire je ne comprend strictement rien !!
Forum Programmation.c comment faire un appel à system() sans que le processus hérite des filedescriptors
J'ai un code C qui fait
system("ssh machine programme &");
Mais le processus ssh hérite des filedescripteurs de l'appli.
j'aimerai qu'il n'hérite de rien.
j'ai trouvé peut-être une solution:
a base de: (pseudo code)
if (fork()==0) {
for (fd=0;fd<maxfd;fd++) {
close(fd);
}
system("ssh......");
}
je ne suis pas fier de mon truc.
avez-vous une meilleure idée ?
merci...
system("ssh machine programme &");
Mais le processus ssh hérite des filedescripteurs de l'appli.
j'aimerai qu'il n'hérite de rien.
j'ai trouvé peut-être une solution:
a base de: (pseudo code)
if (fork()==0) {
for (fd=0;fd<maxfd;fd++) {
close(fd);
}
system("ssh......");
}
je ne suis pas fier de mon truc.
avez-vous une meilleure idée ?
merci...
Forum Programmation.c Hexadecimal VS Decimal
Salut,
bête question:
Dans un programme, est-ce que le fait d'écrire les nombres en hexadécimal au lieu de les écrire en décimal, est-ce que c'est une question de gout ou bien ça apporte réellement quelque chose au programme.
Ex:
enum blabla
{
val1 = 1,
val2 = 2,
val3 = 4,
val4 = 8,
val5 = 16
}
VS
enum blabla
{
val1 = 0x1,
val2 = 0x2,
val3 = 0x4,
val4 = 0x8,
val5 = 0x10
}
merci
bête question:
Dans un programme, est-ce que le fait d'écrire les nombres en hexadécimal au lieu de les écrire en décimal, est-ce que c'est une question de gout ou bien ça apporte réellement quelque chose au programme.
Ex:
enum blabla
{
val1 = 1,
val2 = 2,
val3 = 4,
val4 = 8,
val5 = 16
}
VS
enum blabla
{
val1 = 0x1,
val2 = 0x2,
val3 = 0x4,
val4 = 0x8,
val5 = 0x10
}
merci
Forum Programmation.c Requete post
Voilà je voudrais uploadé un fichier texte sur un server web.
Pour celà j'ai mis un script php sur le server le script marche si je passe par un formulaire.
Mais si j'envoie la requette POST de client.c bin la le server ne répond pas alors que sur la une commande GET / je pe lire la réponse.
Je pense donc que ma requette et mauvaise. Et aussi j'aimerais savoir se que ces que boundary.
Merci
Voici les 2 sources.
Pour celà j'ai mis un script php sur le server le script marche si je passe par un formulaire.
Mais si j'envoie la requette POST de client.c bin la le server ne répond pas alors que sur la une commande GET / je pe lire la réponse.
Je pense donc que ma requette et mauvaise. Et aussi j'aimerais savoir se que ces que boundary.
Merci
Voici les 2 sources.
(…)
Forum Programmation.c Affichage des données dans une position bien défini
Est ce qu'il y a un moyen en C pour faire afficher les données dans une position bien défini dans la ligne d'un fichier :
Exemple :
Taille de la ligne dans le fichier = 265 Caractères
Les valeurs a afficher dans le output :
Les positions des valeurs :
Exemple :
Taille de la ligne dans le fichier = 265 Caractères
Les valeurs a afficher dans le output :
Valeur1 = "Bonjour";
Valeur2 = "Tous";
Valeur3 = "le monde ";
Valeur4 = " ! " ;
Les positions des valeurs :
Valeur1 : a afficher dans la ligne du fichier a la position : (…)
Forum Programmation.c Conserver les événements clavier sur le père, quand le processus fils est au premier plan
Bonjour,
avant tout, j'ai tourné en rond pendant pas mal de temps sur divers sites, des livres et autres documentations.. mais pourtant, je ne trouve pas le moyen de résoudre mon problème sans patcher le dit logiciel. Et j'aimerais autant que possible ne pas devoir en arriver là.
Voici le contexte. Imaginez un processus père qui lance un processus fils afin de lui transmettre des ordres via le STDIN du fils, et qui récupère les réponses par les STDOUT et (…)
avant tout, j'ai tourné en rond pendant pas mal de temps sur divers sites, des livres et autres documentations.. mais pourtant, je ne trouve pas le moyen de résoudre mon problème sans patcher le dit logiciel. Et j'aimerais autant que possible ne pas devoir en arriver là.
Voici le contexte. Imaginez un processus père qui lance un processus fils afin de lui transmettre des ordres via le STDIN du fils, et qui récupère les réponses par les STDOUT et (…)
Forum Programmation.c comment récupérer un uid et gid à partir d'un nom d'utilisateur ou de groupe
Bonjour,
comment récupérer un uid et gid à partir d'un nom d'utilisateur ou de groupe?
J'ai longtemps cherché, mais sans résultat...
merci
comment récupérer un uid et gid à partir d'un nom d'utilisateur ou de groupe?
J'ai longtemps cherché, mais sans résultat...
merci
Forum Programmation.c Probleme de calcul du Checksum TCP
Bonjour a tous,
je fabrique mes propres paquets TCP et j'ai du mal a calculer le checksum
je cree le pseudo header comme ca :
ma fonction checksum est la suivante
je fabrique mes propres paquets TCP et j'ai du mal a calculer le checksum
je cree le pseudo header comme ca :
struct pseudo_header
{
unsigned long saddr, daddr; /*! src/dst IP addresses */
char mbz;
unsigned char ptcl; /*! protocol (tcp = 6, udp = 17) */
unsigned short tcpl; /*! length (tcp header + payload)*/
};
ma fonction checksum est la suivante
int checksum (unsigned short *buf, int nwords)
{
unsigned long sum;
for (sum (…)
Forum Programmation.c PB avec GCC et LD
Bonjour,
J'ai une toute petite expérience en programmation. J'ai l'habitude de tester mon installation GCC avec cette ligne de code dans un fichier toto.c :
Mon problème est celui ci :
Quand je fais "gcc -o toto toto.c", j'ai l'erreur suivante :
J'ai une toute petite expérience en programmation. J'ai l'habitude de tester mon installation GCC avec cette ligne de code dans un fichier toto.c :
void main () {}
Mon problème est celui ci :
Quand je fais "gcc -o toto toto.c", j'ai l'erreur suivante :
gcc -o toto toto.c
toto.c: In function «main":
toto.c:1: attention : return type of «main" is not «int"
/usr/local/bin/ld: option � --hash-style=both � non reocnnue
/usr/local/bin/ld: utiliser --help pour afficher l'aide-m�moire
collect2: ld a (…)
Forum Programmation.c getsockname renvoie une structure vide ...
Bonjour à tous.
Je suis confrontée à une erreur bien bizarre sur hpux itanium (oui, je sais c'est pas linux :)
J'ai un serveur qui fait un bind sur une valeur de port 0 (je laisse donc le soin au système de choisir le port pour moi - inutile de me demander pkoi, c'est juste un besoin vital :). Je récupere ensuite le port par un getsockname et je le stoque dans un fichier pour que les clients récuperent le (…)
Je suis confrontée à une erreur bien bizarre sur hpux itanium (oui, je sais c'est pas linux :)
J'ai un serveur qui fait un bind sur une valeur de port 0 (je laisse donc le soin au système de choisir le port pour moi - inutile de me demander pkoi, c'est juste un besoin vital :). Je récupere ensuite le port par un getsockname et je le stoque dans un fichier pour que les clients récuperent le (…)
Forum Programmation.c tableau de signed short int To unsigned short
Bonjour tout le monde,
je voudrais copier le contenu d'un tableau de type unsigned char dans un tableau de type signed short int, mais je n'arrive pas.
En fait :
unsigned char BigTab[2000];
signed short int LittleTab[250];
je fait appel (4 fois) a une fonction qui me retourne le tableau LittleTab, et a chaque appel je copie le contenu du tablau LittleTab dans BigTab sans écraser le contenu du tableau BigTab, j ai esayer d'utiliser memcpy mais ça marche pas.
(…)
je voudrais copier le contenu d'un tableau de type unsigned char dans un tableau de type signed short int, mais je n'arrive pas.
En fait :
unsigned char BigTab[2000];
signed short int LittleTab[250];
je fait appel (4 fois) a une fonction qui me retourne le tableau LittleTab, et a chaque appel je copie le contenu du tablau LittleTab dans BigTab sans écraser le contenu du tableau BigTab, j ai esayer d'utiliser memcpy mais ça marche pas.
(…)
Forum Programmation.c Galère de pointeurs avec les GArrays
Bonjour à tous,
J'ai besoin de stocker les paquets que composent une communications dans un programme C.
Comme j'ai beaucoup de communications, j'ai commencé par faire un B-Tree dans lequel chaque valeur (associée à une clé) est un GArray qui contient les paquets de la communication.
Le soucis, c'est que ça bug... les 2 premiers paquets de chaque com. sont bien enregistrés et repris, mais pour les suivants j'ai des résultats bizarres...
voilà mon code :
J'ai besoin de stocker les paquets que composent une communications dans un programme C.
Comme j'ai beaucoup de communications, j'ai commencé par faire un B-Tree dans lequel chaque valeur (associée à une clé) est un GArray qui contient les paquets de la communication.
Le soucis, c'est que ça bug... les 2 premiers paquets de chaque com. sont bien enregistrés et repris, mais pour les suivants j'ai des résultats bizarres...
voilà mon code :
/*!******************************
* *
* (…)
Forum Programmation.c Gérer deux sorties écran avec un programme en C
Bonsoir à tous,
Je débute en programmation C. J'ai un projet à réaliser pour lequel je dois gérer deux sorties écran, une dédiée pour de l'affichage 'graphique' et une pour l'interface des questions/réponses avec l'utilisateur. Les réponses de l'utilisateur entraineront des modifications d'affichage sur l'écran dit 'graphique'.
Attention, quand je dis graphique, c'est très basique; j'ai besoin de représenter un schéma de distribution électrique.
Avec la fonction fprintf, je peux rediriger vers l'écran (stdout) mais je n'ai trouvé de solution (…)
Je débute en programmation C. J'ai un projet à réaliser pour lequel je dois gérer deux sorties écran, une dédiée pour de l'affichage 'graphique' et une pour l'interface des questions/réponses avec l'utilisateur. Les réponses de l'utilisateur entraineront des modifications d'affichage sur l'écran dit 'graphique'.
Attention, quand je dis graphique, c'est très basique; j'ai besoin de représenter un schéma de distribution électrique.
Avec la fonction fprintf, je peux rediriger vers l'écran (stdout) mais je n'ai trouvé de solution (…)
Forum Programmation.c gcc: coompiler un projet Visual C ... EFI/TianoCore ?
Bonsoir,
Je dispose d'un ordinateur qui utilise EFI à la place du BIOS comme chargeur de démarrage. Cela signifique qu'outre pouvoir démarrer des OS, je peux aussi lancer des petits logiciels qui peuvent être pratique pooour par exemple réparer des partitions, et faire différents choses. parmi ces logiciels un shell qui me permet d'avoir une ligne de commande.
L'application shell.efi est libre en elle même et j'aimerais bien la recompiler. Seul problème elle fait partie du projet TianoCore [1] qui (…)
Je dispose d'un ordinateur qui utilise EFI à la place du BIOS comme chargeur de démarrage. Cela signifique qu'outre pouvoir démarrer des OS, je peux aussi lancer des petits logiciels qui peuvent être pratique pooour par exemple réparer des partitions, et faire différents choses. parmi ces logiciels un shell qui me permet d'avoir une ligne de commande.
L'application shell.efi est libre en elle même et j'aimerais bien la recompiler. Seul problème elle fait partie du projet TianoCore [1] qui (…)
Forum Programmation.c concatenation de chaine
Bonjour,
Je débute en C et J'essaie de faire un programme qui lance une commande OS et qui récupère la sortie de cette commande dans une variable.
J'ai un debut de programme qui marche mais il me reste 2 problèmes
1) j'arrive à lire la sortie de la commande caractère par caractère, mais quand je les concatene, j'ai une chaine de la bonne longueur mais tous les caracteres sont vides !
2) Il y a apparemment un problème dans mon (…)
Je débute en C et J'essaie de faire un programme qui lance une commande OS et qui récupère la sortie de cette commande dans une variable.
J'ai un debut de programme qui marche mais il me reste 2 problèmes
1) j'arrive à lire la sortie de la commande caractère par caractère, mais quand je les concatene, j'ai une chaine de la bonne longueur mais tous les caracteres sont vides !
2) Il y a apparemment un problème dans mon (…)
Forum Programmation.c Glib et les Binary Trees
Bonjour à tous,
j'essaie d'utiliser les fonctions B-Tree qu'offre Glib mais je rencontre quelques petits soucis.
En fait, j'ajoute des valeurs à la chaine dans un B-Tree et quand je lookup ces valeurs, elles ont disparues... seule reste la dernière ajoutée...
voilà mon code :
j'essaie d'utiliser les fonctions B-Tree qu'offre Glib mais je rencontre quelques petits soucis.
En fait, j'ajoute des valeurs à la chaine dans un B-Tree et quand je lookup ces valeurs, elles ont disparues... seule reste la dernière ajoutée...
voilà mon code :
#include <glib.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
GTree * redirected_connections;
int main(int argc, char **argv)
{
redirected_connections = g_tree_new((GCompareDataFunc)strcmp);
int i;
for (i=1; i < 250; i++)
{
int value = (i * i);
(…)
Forum Programmation.c ncurses et cdk
besoin d'aide avec ncurses et cdk je veux faire un binding entre deux entry et un buttonbox
merci
merci
Forum Programmation.c Chargement dynamique de module
Bonjour,
J'ai une application qui nécessite qu'un module particulier soit en mémoire (module.ko par exemple)
Au début de l'application je souhaiterai être capable de déterminer si le module en question est déjà en mémoire ou non et le cas échéant le charger
Bref faire par programme ce que font lsmod, insmod et rmmod
Pourriez vous me mettre sur la voie?
Cordialement, Philippe
J'ai une application qui nécessite qu'un module particulier soit en mémoire (module.ko par exemple)
Au début de l'application je souhaiterai être capable de déterminer si le module en question est déjà en mémoire ou non et le cas échéant le charger
Bref faire par programme ce que font lsmod, insmod et rmmod
Pourriez vous me mettre sur la voie?
Cordialement, Philippe
Forum Programmation.c Questions d'exam
Bonsoir à tous,
je passe à la repêche un examen de programmation système (demain matin 8h30...) et nous n'avons pas eu de correction de l'exam de première session. J'ai donc quelques questions à vous poser :)
Exercice 1
Repondre par vrai ou faux:
1/ un processus dont le propriétaire est 1000 à les droits de l'utilisateur 1000.
2/Une ecriture sur un tube sans lecteurs en mode bloquant provoque l'envoi du signal SIGPIPE au processus ecrivain, même si celui-ci a la (…)
je passe à la repêche un examen de programmation système (demain matin 8h30...) et nous n'avons pas eu de correction de l'exam de première session. J'ai donc quelques questions à vous poser :)
Exercice 1
Repondre par vrai ou faux:
1/ un processus dont le propriétaire est 1000 à les droits de l'utilisateur 1000.
2/Une ecriture sur un tube sans lecteurs en mode bloquant provoque l'envoi du signal SIGPIPE au processus ecrivain, même si celui-ci a la (…)
Forum Programmation.c aspritnf et realloc
bonjour,
Je voulais savoir si asprintf reallocais le chaine passer en paramatre si on lui passe une chaine non vide ou si il la remallocais autre part.
Par exemple:
asprintf(buffer, "un exemple");
asprintf(buffer, "%s autre chose", buffer);.
Cela pourait etre util pour eviter les fuite memoire.
Merci
Je voulais savoir si asprintf reallocais le chaine passer en paramatre si on lui passe une chaine non vide ou si il la remallocais autre part.
Par exemple:
asprintf(buffer, "un exemple");
asprintf(buffer, "%s autre chose", buffer);.
Cela pourait etre util pour eviter les fuite memoire.
Merci