Condividi tramite


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 Executedi .

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