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


Добавление метода IDL

Мастер Добавление метода IDL добавляет метод в интерфейс на основе IDL, например в проекте ATL, который содержит IDL-файл. Этот мастер недоступен в проектах, поддерживающих MFC.

Данный мастер имеет следующие отличия от мастера Добавление метода и Добавление метода IDL MFC:

  • Мастер Добавление метода добавляет метод в интерфейс проекта и может обновлять связанный с интерфейсом класс.
  • Мастер Добавление метода IDL MFC предназначен для проектов MFC, ActiveX или ATL, поддерживающих MFC.

Добавление метода в интерфейс IDL

  1. В меню Вид выберите Представление классов.

  2. В области представления классов разверните узел проекта, чтобы отобразить интерфейс IDL (.idlфайл), в который нужно добавить метод.

  3. Щелкните имя интерфейса правой кнопкой мыши.

  4. В контекстном меню выберите Добавить>Добавить метод.

  5. В мастере Добавление метода IDL укажите сведения для создания метода.

  6. Нажмите кнопку ОК, чтобы добавить метод.

Список элементов пользовательского интерфейса

В следующем разделе описан интерфейс мастера, используемый для добавления метода:

Снимок экрана: добавление метода с помощью мастера. Показывает два параметра: [ int i и [ in ] float f. Тип возвращаемого значения — HRESULT. Выбраны значения параметров из типа.

  • Имя метода

    Укажите для метода имя.

  • Return Type (Возвращаемый тип)

    Тип данных, возвращаемых методом. Стандартный способ возврата кодов ошибок из методов, определенных в интерфейсе, имеет значение HRESULT.

    В следующей таблице описаны различные типы интерфейсов, в которые можно добавить метод, и указан допустимый тип возвращаемого значения. Для двойных и настраиваемых интерфейсов необходимо использовать тип возвращаемого значения HRESULT и мастер не позволит изменить его.

    Вид интерфейса Возвращаемый тип
    Двойной интерфейс HRESULT. Неизменяемый.
    Пользовательский интерфейс HRESULT. Неизменяемый.
    Локальный настраиваемый интерфейс Укажите собственный тип возвращаемого значения или выберите его в выпадающем списке.
    Dispinterface Укажите собственный тип возвращаемого значения или выберите его в выпадающем списке.
  • Параметры

    Отображает параметры, модификаторы и типы метода.

  • +

    Добавьте параметр. В разделе Параметры введите тип параметра, имя и все модификаторы, например [in] int i, и нажмите кнопку ОК.

  • x

    Удаляет выбранный параметр из списка Параметры.

  • Выводить значения входных-выходных параметров из типа

    Вставляет атрибут [in] или [out] в зависимости от типа параметра.

  • Установить последний параметр как возвращаемое значение (retval)

    Последний параметр будет рассматриваться как возвращаемое значение метода.

  • Атрибуты

    Следующие атрибуты также описаны в Справочнике по языку MIDL.

    • id

      Задает для метода числовой идентификатор. Дополнительные сведения см. в разделе id.

    • call_as

      Указывает имя удаленного метода для сопоставления с этим локальным методом. Дополнительные сведения см. в разделе call_as.

    • helpcontext

      Задает идентификатор контекста, позволяющий пользователю просматривать в файле справки информацию об этом методе. Дополнительные сведения см. в разделе helpcontext.

    • helpstring

      Задает символьную строку для описания элемента, к которому она относится. Дополнительные сведения см. в разделе helpstring.

  • Дополнительные атрибуты

    • hidden

      Указывает, что элемент существует, но не должен отображаться в пользовательском браузере. Дополнительные сведения см. в разделе hidden.

    • local

      Указывает, что интерфейс или функция не удаленные. Дополнительные сведения см. в разделе local.

    • restricted

      Указывает, что библиотека, член модуля, интерфейс или dispinterface не могут вызываться произвольно. Дополнительные сведения см. в разделе restricted.

    • source

      Указывает, что член класса coclass, свойство или метод является источником событий. Для члена класса coclass этот атрибут означает, что член вызывается, а не реализуется. Дополнительные сведения см. в разделе source.

См. также

Мастер "Добавление метода"
Мастер "Добавление метода IDL MFC"