---
name: "XpQueryScreens"
section: "3"
platform: "linux"
package: "libxp"
version: "1.0.4-3"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/XpQueryScreens"
---

# XpQueryScreens(3)

Queries an X Server to determine which screens, of all the screens on the server, support the X Print Service Extension

## NAME

XpQueryScreens - Queries an X Server to determine which screens, of all the screens on the server, support the X Print Service Extension

## SYNOPSIS

      cc \[ flag... \] file... -lXp \[ library... \]\
\
       \#include \<X11/extensions/Print.h\>

**Screen \*\*XpQueryScreens** ( *display,* *list\_count\_return* )\
\
       Display \**display*;\
\
       int \**list\_count\_return*;

## ARGUMENTS

- *display*

  Specifies a pointer to the Display structure; returned from XOpenDisplay.

- *list\_count\_return*

  Returns the number of screens in the list.

## DESCRIPTION

This request returns a non-NULL pointer to a list of screen pointers if one or more screens support the X Print Service Extension; otherwise it returns NULL.

XpQueryScreens determines if the X Print Service Extension is present, and if so, which of all the screens on the X Server support the X Print Service Extension. Unlike many other extensions, the X Print Service Extension may be restricted to a subset of all available screens - for example, a single X Server may be supporting video displays on some screens and printers on others.

The list of screen pointers can be freed by calling XFree.
