Portál AbcLinuxu, 28. prosince 2025 09:06
#include X11/Xlib.h
#include X11/Xutil.h
#include stdio.h
int main(void) {
Display *display;
Window focus;
XWindowAttributes win_attr;
Atom atom,actual_type;
char *atom_name;
int revert;
int actual_format;
unsigned long nitems;
unsigned long bytes_after;
unsigned char *prop;
int status;
int pid;
display = XOpenDisplay(NULL);
XGetInputFocus(display, &focus, &revert);
XGetWindowAttributes(display, focus, &win_attr);
atom = XInternAtom(display, "_NET_WM_PID", True);
atom_name = XGetAtomName (display, atom);
status = XGetWindowProperty(display, focus, atom, 0, 1024,
False, AnyPropertyType,
&actual_type,
&actual_format, &nitems,
&bytes_after,
&prop);
pid = prop[1] * 256;
pid += prop[0];
printf("pid of window 0x%x = %d\n",focus,pid);
printf("%dpx x %dpx\n",win_attr.width,win_attr.height);
return 0;
}
PS: odstranil jsem < a > z kodu, ze je to bere jako nepovolene znacky xixi :)
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.