Condividi tramite


Metodo IPrintAsyncNotifyDataObject::AcquireData (prnasnot.h)

Indirizza le applicazioni in ascolto dei dati di notifica, incluse le dimensioni e il tipo dei dati.

Sintassi

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

Parametri

[out] ppNotificationData

Buffer contenente i dati di notifica.

[out] pSize

Dimensioni del buffer dei dati.

[out] ppSchema

Puntatore GUID allo schema di dati.

Valore restituito

Per i valori possibili, vedere PrintAsyncNotifyError .

Per altre informazioni sui codici di errore COM, vedere Gestione degli errori.

Commenti

Le applicazioni che chiamano questo metodo devono chiamare ReleaseData al termine dell'utilizzo dei dati di notifica.

L'interfaccia IPrintAsyncNotifyDataObject deve essere implementata per garantire che una chiamata di IUnknown::Release non libera l'oggetto se un'applicazione di ascolto non ha terminato l'utilizzo dei dati dell'oggetto. Di conseguenza, se si verifica una chiamata a Release quando un'applicazione ha chiamato AcquireData ma non ha ancora chiamato ReleaseData , l'oggetto non deve essere liberato. Per questo motivo, è consigliabile usare IUnknown::AddRef per incrementare il numero di riferimenti dell'oggetto e che ReleaseData decrementa il conteggio.

Quando print Spooler ha esito negativo, crea un oggetto IPrintAsyncNotifyDataObject . Quando un listener chiama AcquireData per questa notifica, ppNotificationData è NULL, la dimensione è 0 e ppSchema è NOTIFICATION_RELEASE.

Requisiti

   
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione prnasnot.h
DLL Prnasnot.dll

Vedi anche

Interfacce di notifica di stampa asincrone

IPrintAsyncNotifyDataObject

Stampa