Поделиться через


Функция FindFirstPrinterChangeNotification (winspool.h)

Предупреждение

Начиная с Windows 10 интерфейсы API, поддерживающие сторонних поставщиков печати, являются устаревшими. Корпорация Майкрософт не рекомендует инвестировать в сторонних поставщиков печати. Кроме того, в Windows 8 и более новых продуктах, где доступна модель драйвера печати версии 4, сторонние поставщики печати не могут создавать очереди, использующие драйверы печати версии 4, или управлять ими.

Функция FindFirstPrinterChangeNotification поставщика печати сообщает поставщику, что приложение запросило уведомление при возникновении указанного набора событий в указанной очереди печати.

Синтаксис

HANDLE FindFirstPrinterChangeNotification(
  HANDLE hPrinter,
  DWORD  fdwFilter,
  DWORD  fdwOptions,
  PVOID  pPrinterNotifyOptions
);

Параметры

hPrinter

Дескриптор принтера, предоставленный вызывающим абонентом, идентифицирует принтер, для которого запрашивается уведомление о событии. Этот дескриптор должен быть ранее получен из OpenPrinter.

fdwFilter

Определяет параметр DWORDfdwFilter.

fdwOptions

Не используется.

pPrinterNotifyOptions

Предоставленный вызывающим абонентом указатель на структуру PRINTER_NOTIFY_OPTIONS (описано в документации по Windows SDK).

Возвращаемое значение

Возвращает дескриптор драйвера печати.

Комментарии

Когда диспетчер очереди вызывает функцию FindFirstPrinterChangeNotification поставщика печати, pPrinterNotifyOptions определяет типы сведений, которые поставщик печати должен отправлять в очередь очереди при возникновении одного из указанных событий.

Список типов уведомлений, которые может запрашивать приложение, и список типов сведений, которые можно использовать для описания события, см. в описании FindFirstPrinterChangeNotification в документации по Windows SDK. Типы событий, для которых приложение может запрашивать уведомление, включают добавление или удаление задания печати или формы. Типы сведений, которые приложение может запрашивать, включают параметры задания или формы.

Если поставщик печати не запрашивает опрос, поставщик печати должен предоставить типы информации, определяемые pPrinterNotifyOptions, вызвав PartialReplyPrinterChangeNotification или ReplyPrinterChangeNotification.

Если поставщик запрашивает опрос (то есть задает PRINTER_NOTIFY_STATUS_POLL), он не должен вызывать ReplyPrinterChangeNotification. Вместо этого диспетчер очереди сигнализирует приложению через регулярные интервалы.

Опрашиваемый и неоплачиваемый поставщик печати должны возвращать текущее состояние всех запрошенных типов информации при каждом вызове функции RefreshPrinterChangeNotification .

Дополнительные сведения см. в разделе Поддержка уведомлений об изменении принтера.

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть winspool.h (включая Winspool.h)
Библиотека WinSpool.lib
DLL Winspool.drv

См. также раздел

ReplyPrinterChangeNotification

PartialReplyPrinterChangeNotification

RefreshPrinterChangeNotification