Classe IDataObjectImpl
Questa classe fornisce metodi per supportare uniform data transfer e gestire le connessioni.
Importante
Questa classe e i relativi membri non possono essere usati nelle applicazioni eseguite in Windows Runtime.
Sintassi
template<class T>
class IDataObjectImpl
Parametri
T
Classe derivata da IDataObjectImpl
.
Membri
Metodi pubblici
Nome | Descrizione |
---|---|
IDataObjectImpl::D Advise | Stabilisce una connessione tra l'oggetto dati e un sink di avviso. Ciò consente al sink di consigliare di ricevere notifiche di modifiche nell'oggetto. |
IDataObjectImpl::D Unadvise | Termina una connessione stabilita in precedenza tramite DAdvise . |
IDataObjectImpl::EnumDAdvise | Crea un enumeratore per scorrere le connessioni consultive correnti. |
IDataObjectImpl::EnumFormatEtc | Crea un enumeratore per scorrere le FORMATETC strutture supportate dall'oggetto dati. L'implementazione ATL restituisce E_NOTIMPL. |
IDataObjectImpl::FireDataChange | Invia una notifica di modifica a ogni sink di avviso. |
IDataObjectImpl::GetCanonicalFormatEtc | Recupera una struttura logicamente equivalente FORMATETC a una struttura più complessa. L'implementazione ATL restituisce E_NOTIMPL. |
IDataObjectImpl::GetData | Trasferisce i dati dall'oggetto dati al client. I dati vengono descritti in una FORMATETC struttura e trasferiti tramite una STGMEDIUM struttura. |
IDataObjectImpl::GetDataHere | Analogamente a GetData , ad eccezione del client deve allocare la STGMEDIUM struttura. L'implementazione ATL restituisce E_NOTIMPL. |
IDataObjectImpl::QueryGetData | Determina se l'oggetto dati supporta una struttura specifica FORMATETC per il trasferimento dei dati. L'implementazione ATL restituisce E_NOTIMPL. |
IDataObjectImpl::SetData | Trasferisce i dati dal client all'oggetto dati. L'implementazione ATL restituisce E_NOTIMPL. |
Osservazioni:
L'interfaccia IDataObject fornisce metodi per supportare Uniform Data Transfer. IDataObject
utilizza le strutture di formato standard FORMATETC e STGMEDIUM per recuperare e archiviare i dati.
IDataObject
gestisce anche le connessioni per consigliare ai sink di gestire le notifiche di modifica dei dati. Affinché il client riceva notifiche di modifica dei dati dall'oggetto dati, il client deve implementare l'interfaccia IAdviseSink su un oggetto denominato sink di avviso. Quando il client chiama IDataObject::DAdvise
, viene stabilita una connessione tra l'oggetto dati e il sink di avviso.
La classe IDataObjectImpl
fornisce un'implementazione predefinita di IDataObject
e implementa inviando informazioni al dispositivo di dump nelle compilazioni IUnknown
di debug.
Esercitazione su ATL per articoli correlati, creazione di un progetto ATL
Gerarchia di ereditarietà
IDataObject
IDataObjectImpl
Requisiti
Intestazione: atlctl.h
IDataObjectImpl::D Advise
Stabilisce una connessione tra l'oggetto dati e un sink di avviso.
HRESULT DAdvise(
FORMATETC* pformatetc,
DWORD advf,
IAdviseSink* pAdvSink,
DWORD* pdwConnection);
Osservazioni:
Ciò consente al sink di consigliare di ricevere notifiche di modifiche nell'oggetto.
Per terminare la connessione, chiamare DUnadvise.
Vedere IDataObject::D Advise in Windows SDK.
IDataObjectImpl::D Unadvise
Termina una connessione stabilita in precedenza tramite DAdvise.
HRESULT DUnadvise(DWORD dwConnection);
Osservazioni:
Vedere IDataObject::D Unadvise in Windows SDK.
IDataObjectImpl::EnumDAdvise
Crea un enumeratore per scorrere le connessioni consultive correnti.
HRESULT DAdvise(
FORMATETC* pformatetc,
DWORD advf,
IAdviseSink* pAdvSink,
DWORD* pdwConnection);
Osservazioni:
Vedere IDataObject::EnumDAdvise in Windows SDK.
IDataObjectImpl::EnumFormatEtc
Crea un enumeratore per scorrere le FORMATETC
strutture supportate dall'oggetto dati.
HRESULT EnumFormatEtc(
DWORD dwDirection,
IEnumFORMATETC** ppenumFormatEtc);
Osservazioni:
Vedi IDataObject::EnumFormatEtc in Windows SDK.
Valore restituito
Restituisce E_NOTIMPL.
IDataObjectImpl::FireDataChange
Invia una notifica di modifica a ogni sink che è attualmente in fase di gestione.
HRESULT FireDataChange();
Valore restituito
Valore HRESULT standard.
IDataObjectImpl::GetCanonicalFormatEtc
Recupera una struttura logicamente equivalente FORMATETC
a una struttura più complessa.
HRESULT GetCanonicalFormatEtc(FORMATETC* pformatetcIn, FORMATETC* pformatetcOut);
Valore restituito
Restituisce E_NOTIMPL.
Osservazioni:
Vedere IDataObject::GetCanonicalFormatEtc in Windows SDK.
IDataObjectImpl::GetData
Trasferisce i dati dall'oggetto dati al client.
HRESULT GetData(
FORMATETC* pformatetcIn,
STGMEDIUM* pmedium);
Osservazioni:
Il parametro pformatetcIn deve specificare un tipo di supporto di archiviazione di TYMED_MFPICT.
Vedere IDataObject::GetData in Windows SDK.
IDataObjectImpl::GetDataHere
Analogamente a GetData
, ad eccezione del client deve allocare la STGMEDIUM
struttura.
HRESULT GetDataHere(
FORMATETC* pformatetc,
STGMEDIUM* pmedium);
Valore restituito
Restituisce E_NOTIMPL.
Osservazioni:
Vedere IDataObject::GetDataHere in Windows SDK.
IDataObjectImpl::QueryGetData
Determina se l'oggetto dati supporta una struttura specifica FORMATETC
per il trasferimento dei dati.
HRESULT QueryGetData(FORMATETC* pformatetc);
Valore restituito
Restituisce E_NOTIMPL.
Osservazioni:
Vedere IDataObject::QueryGetData in Windows SDK.
IDataObjectImpl::SetData
Trasferisce i dati dal client all'oggetto dati.
HRESULT SetData(
FORMATETC* pformatetc,
STGMEDIUM* pmedium,
BOOL fRelease);
Valore restituito
Restituisce E_NOTIMPL.
Osservazioni:
Vedere IDataObject::SetData in Windows SDK.