Поделиться через


Метод ICreateTypeInfo::LayOut (oaidl.h)

Назначает смещения ДЛЯ виртуальных функций и смещения экземпляров для отдельных элементов данных экземпляра и создает описания двух типов для двойных интерфейсов.

Синтаксис

HRESULT LayOut();

Возвращаемое значение

Этот метод может возвращать одно из этих значений.

Код возврата Описание
S_OK
Успешно.
E_OUTOFMEMORY
Недостаточно памяти для завершения операции.
E_ACCESSDENIED
Не удается выполнить запись в место назначения.
STG_E_INSUFFICIENTMEMORY
Недостаточно памяти для завершения операции.
TYPE_E_UNDEFINEDTYPE
Привязка к нераспознанным типу.
TYPE_E_INVALIDSTATE
Недопустимое состояние библиотеки типов для этой операции.
TYPE_E_WRONGTYPEKIND
Несоответствие типов.
TYPE_E_ELEMENTNOTFOUND
Элемент не найден.
TYPE_E_AMBIGUOUSNAME
Существует несколько элементов с таким именем.
TYPE_E_SIZETOOBIG
Слишком длинные сведения о типе.
TYPE_E_TYPEMISMATCH
Несоответствие типов.

Комментарии

LayOut также назначает идентификаторы членов функциям и переменным, если только typeKIND класса не TKIND_DISPATCH. Вызовите LayOut после определения всех членов сведений о типе и перед сохранением библиотеки типов.

Используйте ICreateTypeLib::SaveAllChanges , чтобы сохранить сведения о типе после вызова LayOut. Другие члены интерфейса ICreateTypeInfo не следует вызывать после вызова LayOut.

Примечание Различные реализации ICreateTypeLib::SaveAllChanges или других интерфейсов, создающих сведения о типе, могут назначать любые идентификаторы членов при условии, что все члены (включая унаследованные члены) имеют уникальные идентификаторы. Примеры см. в разделе ICreateTypeInfo2.
 

Требования

Требование Значение
Целевая платформа Windows
Header oaidl.h

См. также раздел

ICreateTypeInfo