Sdílet prostřednictvím


ICommandImpl – třída

Poskytuje implementaci pro ICommand rozhraní.

Syntaxe

template <class T, class CommandBase = ICommand>
class ATL_NO_VTABLE ICommandImpl : public CommandBase

Parametry

T
Vaše třída odvozená z ICommandImpl.

CommandBase
Příkazové rozhraní. Výchozí hodnota je ICommand.

Požadavky

Hlavička: atldb.h

Členové

Metody

Název Popis
Zrušit Zruší spuštění aktuálního příkazu.
CancelExecution Zruší spuštění aktuálního příkazu.
CreateRowset Vytvoří objekt sady řádků.
Execute Spustí příkaz.
GetDBSession Vrátí ukazatel rozhraní na relaci, která vytvořila příkaz.
ICommandImpl Konstruktor

Datové členy

Název Popis
m_bCancel Určuje, jestli má být příkaz zrušen.
m_bCancelWhenExecuting Určuje, jestli má být příkaz při provádění zrušen.
m_bIsExecuting Určuje, jestli se příkaz právě spouští.

Poznámky

Povinné rozhraní pro objekt příkazu.

ICommandImpl::Cancel

Zruší spuštění aktuálního příkazu.

Syntaxe

STDMETHOD(Cancel)();

Poznámky

Viz ICommand::Cancel v referenční dokumentaci programátora OLE DB.

ICommandImpl::CancelExecution

Zruší spuštění aktuálního příkazu.

Syntaxe

HRESULT CancelExecution();

ICommandImpl::CreateRowset

Zavolá se provedením pro vytvoření jedné sady řádků.

Syntaxe

template template <class RowsetClass>
HRESULT CreateRowset(IUnknown* pUnkOuter,
   REFIID riid,
   DBPARAMS* pParams,
   DBROWCOUNT* pcRowsAffected,
   IUnknown** ppRowset,
   RowsetClass*& pRowsetObj);

Parametry

RowsetClass
Člen třídy šablony představující třídu sady řádků uživatele. Obvykle je vygenerován průvodcem.

pUnkOuter
[v] Ukazatel na řídicí IUnknown rozhraní, pokud se sada řádků vytváří jako součást agregace, jinak má hodnotu null.

riid
[v] Odpovídá riidu v ICommand::Execute.

pParams
[in/out] Odpovídá pParams v ICommand::Execute.

pcRowsAffected
Odpovídá pcRowsAffected in ICommand::Execute.

ppRowset
[in/out] Odpovídá ppRowset v ICommand::Execute.

pRowsetObj
[ven] Ukazatel na objekt sady řádků. Obvykle se tento parametr nepoužívá, ale lze jej použít, pokud před předáním objektu COM potřebujete na sadě řádků provést více práce. Životnost pRowsetObj je vázána ppRowset.

Návratová hodnota

Standardní hodnota HRESULT. Podívejte ICommand::Execute se na seznam typických hodnot.

Poznámky

Chcete-li vytvořit více než jednu sadu řádků nebo poskytnout vlastní podmínky pro vytváření různých sad řádků, umístěte různá volání CreateRowset z .Execute

Viz ICommand::Execute v odkazech programátora OLE DB.

ICommandImpl::Execute

Spustí příkaz.

Syntaxe

HRESULT Execute(IUnknown* pUnkOuter,
   REFIID riid,
   DBPARAMS* pParams,
   DBROWCOUNT* pcRowsAffected,
   IUnknown** ppRowset);

Parametry

Viz ICommand::Execute v odkazech programátora OLE DB.

Poznámky

Požadované odchozí rozhraní bude rozhraní získané z objektu sady řádků, který tato funkce vytvoří.

Execute volá CreateRowset. Přepište výchozí implementaci a vytvořte více než jednu sadu řádků nebo zadejte vlastní podmínky pro vytváření různých sad řádků.

ICommandImpl::GetDBSession

Vrátí ukazatel rozhraní na relaci, která vytvořila příkaz.

Syntaxe

STDMETHOD (GetDBSession) (REFIID riid,
   IUnknown** ppSession);

Parametry

Viz ICommand::GetDBSession v odkazech programátora OLE DB.

Poznámky

Užitečné pro načtení vlastností z relace.

ICommandImpl::ICommandImpl

Konstruktor

Syntaxe

ICommandImpl();

ICommandImpl::m_bCancel

Určuje, jestli je příkaz zrušen.

Syntaxe

unsigned m_bCancel:1;

Poznámky

Tuto proměnnou můžete načíst v Execute metodě třídy příkazů a podle potřeby ji zrušit.

ICommandImpl::m_bCancelWhenExecuting

Určuje, zda lze příkaz při provádění zrušit.

Syntaxe

unsigned m_bCancelWhenExecuting:1;

Poznámky

Výchozí nastavení true je (lze zrušit).

ICommandImpl::m_bIsExecuting

Určuje, jestli se příkaz právě spouští.

Syntaxe

unsigned m_bIsExecuting:1;

Poznámky

Metoda Execute třídy příkazů může tuto proměnnou nastavit na true.

Viz také

Šablony zprostředkovatele OLE DB
Architektura šablon zprostředkovatele OLE DB