Classe ICommandImpl
Fornisce l'implementazione per l'interfaccia ICommand .
Sintassi
template <class T, class CommandBase = ICommand>
class ATL_NO_VTABLE ICommandImpl : public CommandBase
Parametri
T
Classe derivata da ICommandImpl
.
CommandBase
Interfaccia di comando. Il valore predefinito è ICommand
.
Requisiti
Intestazione: atldb.h
Membri
Metodi
Nome | Descrizione |
---|---|
Annulla | Annulla l'esecuzione corrente del comando. |
CancelExecution | Annulla l'esecuzione corrente del comando. |
CreateRowset | Crea un oggetto set di righe. |
Eseguire | Esegue il comando . |
GetDBSession | Restituisce un puntatore all'interfaccia alla sessione che ha creato il comando. |
ICommandImpl | Costruttore. |
Membri dei dati
Nome | Descrizione |
---|---|
m_bCancel | Indica se il comando deve essere annullato. |
m_bCancelWhenExecuting | Indica se il comando deve essere annullato durante l'esecuzione. |
m_bIsExecuting | Indica se il comando è attualmente in esecuzione. |
Osservazioni:
Interfaccia obbligatoria nell'oggetto comando.
ICommandImpl::Cancel
Annulla l'esecuzione corrente del comando.
Sintassi
STDMETHOD(Cancel)();
Osservazioni:
Vedere ICommand::Cancel nella guida di riferimento per programmatori OLE DB.
ICommandImpl::CancelExecution
Annulla l'esecuzione corrente del comando.
Sintassi
HRESULT CancelExecution();
ICommandImpl::CreateRowset
Chiamato da Execute per creare un singolo set di righe.
Sintassi
template template <class RowsetClass>
HRESULT CreateRowset(IUnknown* pUnkOuter,
REFIID riid,
DBPARAMS* pParams,
DBROWCOUNT* pcRowsAffected,
IUnknown** ppRowset,
RowsetClass*& pRowsetObj);
Parametri
RowsetClass
Membro della classe modello che rappresenta la classe del set di righe dell'utente. In genere generato dalla procedura guidata.
pUnkOuter
[in] Puntatore all'interfaccia di controllo IUnknown
se il set di righe viene creato come parte di un'aggregazione; in caso contrario, è Null.
riid
[in] Corrisponde a riid in ICommand::Execute
.
pParams
[in/out] Corrisponde a pParams in ICommand::Execute
.
pcRowsAffected
Corrisponde a pcRowsAffected in ICommand::Execute
.
ppRowset
[in/out] Corrisponde a ppRowset in ICommand::Execute
.
pRowsetObj
[out] Puntatore a un oggetto set di righe. In genere questo parametro non viene usato, ma può essere usato se è necessario eseguire più operazioni sul set di righe prima di passarlo a un oggetto COM. La durata di pRowsetObj è associata da ppRowset.
Valore restituito
Valore HRESULT standard. Vedere ICommand::Execute
per un elenco di valori tipici.
Osservazioni:
Per creare più set di righe o per fornire condizioni personalizzate per la creazione di set di righe diversi, effettuare chiamate diverse da all'interno CreateRowset
Execute
di .
Vedere ICommand::Execute nella guida di riferimento per programmatori OLE DB.
ICommandImpl::Execute
Esegue il comando .
Sintassi
HRESULT Execute(IUnknown* pUnkOuter,
REFIID riid,
DBPARAMS* pParams,
DBROWCOUNT* pcRowsAffected,
IUnknown** ppRowset);
Parametri
Vedere ICommand::Execute nella guida di riferimento per programmatori OLE DB.
Osservazioni:
L'interfaccia in uscita richiesta sarà un'interfaccia acquisita dall'oggetto set di righe creato da questa funzione.
Execute
chiama CreateRowset. Eseguire l'override dell'implementazione predefinita per creare più set di righe o per fornire condizioni personalizzate per la creazione di set di righe diversi.
ICommandImpl::GetDBSession
Restituisce un puntatore all'interfaccia alla sessione che ha creato il comando.
Sintassi
STDMETHOD (GetDBSession) (REFIID riid,
IUnknown** ppSession);
Parametri
Vedere ICommand::GetDBSession nella guida di riferimento per programmatori OLE DB.
Osservazioni:
Utile per recuperare le proprietà dalla sessione.
ICommandImpl::ICommandImpl
Costruttore.
Sintassi
ICommandImpl();
ICommandImpl::m_bCancel
Indica se il comando viene annullato.
Sintassi
unsigned m_bCancel:1;
Osservazioni:
È possibile recuperare questa variabile nel Execute
metodo della classe di comando e annullarla in base alle esigenze.
ICommandImpl::m_bCancelWhenExecuting
Indica se il comando può essere annullato durante l'esecuzione.
Sintassi
unsigned m_bCancelWhenExecuting:1;
Osservazioni:
Il valore predefinito è true
(può essere annullato).
ICommandImpl::m_bIsExecuting
Indica se il comando è attualmente in esecuzione.
Sintassi
unsigned m_bIsExecuting:1;
Osservazioni:
Il Execute
metodo della classe di comando può impostare questa variabile su true
.
Vedi anche
Modelli di provider OLE DB
Architettura dei modelli di provider OLE DB