#include #include #include #include #include #define KEYCODE 83 int main() { Display *display = XOpenDisplay(0); if(display == NULL) return -1; Window winRoot = XDefaultRootWindow(display); Window winFocus; int revert; XGetInputFocus(display, &winFocus, &revert); XKeyEvent event; event.display = display; event.window = winFocus; event.root = winRoot; event.subwindow = None; event.time = CurrentTime; event.x = 1; event.y = 1; event.x_root = 1; event.y_root = 1; event.same_screen = True; event.keycode = 83; event.state = 0x10; event.type = KeyPress; XKeyEvent *e = &event; KeySym ks; int nbytes; char str[256+1]; static char *buf; buf = malloc(8); nbytes = XLookupString (e, str, 256, &ks, NULL); printf("nbytes = %d\n", nbytes); printf("ks= %d (%04x)\n", ks, ks); return 0; }