J'essaye de faire un petit programe base sur xlib et xosd, c'est un daemon qui peut ecouter sur le clavier et effectuer des operations comme la modification du volume ou autre.
J'utilise la fonction XGrabKeyboard pour intercepter le clavier cependant XUngrabKeyboard ne me rend pas la main..
Si qq a une piste ?
Voila un exemple de code ou je devrai retrouver la main pendant les 20 secondes.
Romain
(gcc devxosd.c -o devxosd -lxosd)
Code :
/*
* XOSD TEST
*/
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <fcntl.h>
#include <sys/ioctl.h>
#include <errno.h>
#include <linux/types.h>
#include <xosd.h>
#include <X11/Xlib.h>
#include <X11/keysym.h>
#include <X11/Xutil.h>
#include <sys/soundcard.h>
int getSound (void)
{
int fd_mixer, vol;
if ((fd_mixer = open ("/dev/mixer", O_RDWR)) < 0) {
perror ("/dev/mixer" );
return -1;
}
if (ioctl (fd_mixer, SOUND_MIXER_READ_VOLUME, &vol) == -1) {
perror ("ioctl" );
return -1;
}
if (close(fd_mixer) == -1) {
perror("close" );
return -1;
}
return vol&255;
}
int setSound (int v)
{
int fd_mixer, vol;
if ((fd_mixer = open ("/dev/mixer", O_RDWR)) < 0) {
perror ("/dev/mixer" );
return -1;
}
vol = (v << 8) | v ;
if (ioctl (fd_mixer, SOUND_MIXER_WRITE_VOLUME, &vol) == -1) {
Marsh Posté le 20-04-2004 à 22:50:12
Bonjour,
J'essaye de faire un petit programe base sur xlib et xosd, c'est un daemon qui peut ecouter sur le clavier et effectuer des operations comme la modification du volume ou autre.
J'utilise la fonction XGrabKeyboard pour intercepter le clavier cependant XUngrabKeyboard ne me rend pas la main..
Si qq a une piste ?
Voila un exemple de code ou je devrai retrouver la main pendant les 20 secondes.
Romain
(gcc devxosd.c -o devxosd -lxosd)