ICreateTypeInfo::LayOut

Return Value

The SCODE value of the returned HRESULT is one of the following:

SCODE
Meaning
S_OK
Success.
STG_E_INSUFFICIENTMEMORY
Out of memory.
E_OUTOFMEMORY
Out of memory.
E_ACCESSDENIED
Can't write to destination.
TYPE_E_UNDEFINEDTYPE
Bound to unrecognized type.
TYPE_E_INVALIDSTATE
The type library's state is not valid for this operation.
TYPE_E_WRONGTYPEKIND
Type mismatch.
TYPE_E_ELEMENTNOTFOUND
The element can't be found.
TYPE_E_AMBIGUOUSNAME
More than one item exists with this name.
TYPE_E_SIZETOOBIG
The type information is too large to lay out.
TYPE_E_TYPEMISMATCH
Type mismatch.

Comments

LayOut
assigns VTBL offsets for virtual functions and instance offsets for per-instance data members, and creates the two typeinfos for dual interfaces. LayOut also assigns member ID numbers to the functions and variables unless the TYPEKIND of the class is TKIND_DISPATCH. LayOut should be called after all members of the type information are defined and before the type library is saved.

Use SaveAllChanges to save the type information after calling LayOut. Don't call other members of the ICreateTypeInfo interface after calling LayOut.

Note that different implementations of ICreateTypeInfo or other interfaces that create type information are free to assign any member ID numbers, provided that all members, including inherited members, have unique IDs.

Software for developers
Delphi Components
.Net Components
Software for Android Developers
More information resources
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
Databases for Amazon shops developers
Amazon Categories Database
Browse Nodes Database