IPrintAsyncNotifyDataObject::AcquireData 方法 (prnasnot.h)
将侦听应用程序定向到通知数据,包括数据的大小和类型。
语法
HRESULT AcquireData(
[out] BYTE **ppNotificationData,
[out] ULONG *pSize,
[out] PrintAsyncNotificationType **ppSchema
);
parameters
[out] ppNotificationData
包含通知数据的缓冲区。
[out] pSize
数据缓冲区的大小。
[out] ppSchema
指向数据架构的 GUID 指针。
返回值
有关可能的值,请参阅 PrintAsyncNotifyError 。
有关 COM 错误代码的详细信息,请参阅错误处理。
注解
调用此方法的应用程序在完成使用通知数据后,必须调用 ReleaseData 。
必须实现 IPrintAsyncNotifyDataObject 接口,以确保如果侦听应用程序尚未完成使用对象的数据, 则 IUnknown::Release 的调用不会释放对象。 因此,如果在应用程序已调用 AcquireData 但尚未调用 ReleaseData 时发生对 Release 的调用,则不得释放对象。 出于此原因,我们建议 AcquireData 使用 IUnknown::AddRef 递增对象的引用计数,并让 ReleaseData 递减计数。
打印后台处理程序失败时,它将创建 IPrintAsyncNotifyDataObject 对象。 当侦听器为此通知调用 AcquireData 时, ppNotificationData 为 NULL,大小为 0, ppSchema 为NOTIFICATION_RELEASE。
要求
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 [仅限桌面应用] |
目标平台 | Windows |
标头 | prnasnot.h |
DLL | Prnasnot.dll |