This structure is used to define a function description.
At a Glance
Header file: | Oaidl.h |
Windows CE versions: | 2.0 and later |
Syntax
typedef struct tagFUNCDESC {
MEMBERID memid;
/* [size_is(cScodes)] */ SCODE RPC_FAR *lprgscode;
/* [size_is(cParams)] */ ELEMDESC __RPC_FAR *lprgelemdescParam;
FUNCKIND funckind;
INVOKEKIND invkind;
CALLCONV callconv;
short cParams;
short cParamsOpt;
short oVft;
short cScodes;
ELEMDESC elemdescFunc;
WORD wFuncFlags;
} FUNCDESC;
Members
memid
Function member identifier.
lprgscode
lprgelemdescParam
funckind
Specifies whether the function is virtual, static, or dispatch-only.
invkind
Invocation kind. Indicates if this is a property function, and if so, what kind.
callconv
Specifies the function’s calling convention.
cParams
Count of total number of parameters, both required and optional.
cParamsOpt
Count of optional parameters.
ovft
For FUNC_VIRTUAL, specifies the offset in the VTBL.
cScodes
Count of permitted return values.
elemdescFunc
Contains the return type of the function.
wFuncFlags
Definition of flags follows.
Remarks
The cParamsOpt member specifies the form of optional parameters accepted by the function, as follows:
For 16-bit systems (Macintosh), the members cScodes and lprgscode store the count and the set of errors that a function can return. If cScodes = –1, then the set of errors is unknown. If cScodes = –1, or if cScodes = 0, then lprgscodeis undefined.