NERvDN Library  0.2.0.20160420-0019
NERvLibrary - Nerve Gear Developer Network
NERvGear::IExecute Struct Referenceabstract

Nerve Gear execution interface. More...

#include <NERvGear/interface/IExecute.h>

Inheritance diagram for NERvGear::IExecute:
NERvGear::IUnknown GPBeta::OImageActionFilter GPBeta::OMailActionFilter RangerCD::OShortcutKeysActionFilter

Detailed Description

Nerve Gear execution interface.

Note
If an action filter returns an error or S_FALSE from its IExecute::Invoke(), the launcher menu will be kept and not get dismissed.
See also
NERvExecute()

Define ID:

const NERvGear::UID NERvGear::ID_IData; // 00000001-0000-0000-4945-786563757465

Public Member Functions

virtual long __stdcall Invoke (UI::IWindow *window, const wchar_t *cmd, const wchar_t *param, const wchar_t *cwd, EXEC::TYPE type, long option)=0
 Execute an action. More...
 
- Public Member Functions inherited from NERvGear::IUnknown
virtual long __stdcall QueryInterface (const UID &interfaceID, void **ppvObject)=0
 
virtual unsigned long __stdcall AddRef ()=0
 
virtual unsigned long __stdcall Release ()=0
 

Member Function Documentation

virtual long __stdcall NERvGear::IExecute::Invoke ( UI::IWindow *  window,
const wchar_t *  cmd,
const wchar_t *  param,
const wchar_t *  cwd,
EXEC::TYPE  type,
long  option 
)
pure virtual

Execute an action.

Parameters
[in]windowReserved, must be NULL.
[in]cmdThe action command.
[in]paramThe action parameter, can be NULL.
[in]cwdThe working directory for the action, can be NULL.
[in]typeThe action type, can be one of the enumeration values of NERvGear::EXEC::ACTION or a custom value.
[in]optionReserved.
Returns
Returns the action's execution result.
Return values
S_OKSuccess, indicates that caller should stop searching the filter chain.
S_FALSESuccess, indicates that caller should stop searching the filter chain and this action could be ignored.
E_FAILFail, indicates that caller could continue searching the filter chain.