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


Метод IPrintAsyncNotifyDataObject::AcquireData (prnasnot.h)

Направляет прослушивающие приложения к данным уведомлений, включая размер и тип данных.

Синтаксис

HRESULT AcquireData(
  [out] BYTE                       **ppNotificationData,
  [out] ULONG                      *pSize,
  [out] PrintAsyncNotificationType **ppSchema
);

Параметры

[out] ppNotificationData

Буфер, содержащий данные уведомления.

[out] pSize

Размер буфера данных.

[out] ppSchema

Указатель GUID на схему данных.

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

Возможные значения см. в разделе PrintAsyncNotifyError .

Дополнительные сведения о кодах ошибок COM см. в разделе Обработка ошибок.

Комментарии

Приложения, которые вызывают этот метод, должны вызывать ReleaseData после завершения использования данных уведомления.

Интерфейс IPrintAsyncNotifyDataObject должен быть реализован, чтобы гарантировать, что вызов IUnknown::Release не освобождает объект, если прослушивающее приложение не завершило использование данных объекта. Соответственно, если вызов Release происходит, когда приложение вызывает AcquireData, но еще не вызывает ReleaseData , то объект не должен быть освобожден. По этой причине рекомендуется, чтобы AcquireData использовал IUnknown::AddRef для увеличения количества ссылок объекта, а ReleaseData уменьшал это число.

При сбое очереди печати создается объект IPrintAsyncNotifyDataObject . Когда прослушиватель вызывает AcquireData для этого уведомления, ppNotificationData имеет значение NULL, размер равен 0, а ppSchema — NOTIFICATION_RELEASE.

Требования

   
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2008 [только классические приложения]
Целевая платформа Windows
Header prnasnot.h
DLL Prnasnot.dll

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

Интерфейсы уведомлений асинхронной печати

IPrintAsyncNotifyDataObject

Вывод на печать