#include <X11/Xlib.h>
#include <X11/extensions/XTest.h> //XTestFakeKeyEvent
#include <X11/keysym.h> //KeySym KeyCode XKeysymToKeycode
#include <stdio.h>
void ClickKey(void)
{
Display* p_display = XOpenDisplay( NULL );
KeySym keysym = XK_A;
KeyCode keycode = NoSymbol;
keycode = XKeysymToKeycode( p_display , keysym );
XTestFakeKeyEvent( p_display , keycode , True , 0 ); // 键盘按下event
XTestFakeKeyEvent( p_display , keycode , False , 0 ); // 键盘释放event
XFlush( p_display );
XCloseDisplay( p_display );
}
int main()
{
ClickKey();
printf("this is test...\n");
}
gcc mykey.c -o mykey -lX11 -lXtst
gcc -o mykey mykey.c -lX11 -lXtst -g -Wall -Wextra -pedantic