Метод 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 |