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


Атрибуты IDL

Традиционно обслуживание idl-файла значило, что:

  • Знакомы со структурой и синтаксисом idl-файла, чтобы иметь возможность изменять их.

  • Используйте мастер, который препятствовал иметь возможность изменить некоторые аспекты файла idl.

Теперь можно изменить файл idl из файла исходного кода, используя атрибуты IDL Visual C++. Во многих случаях атрибуты IDL Visual C++ имеют одно и то же имя как атрибуты MIDL. Если имя атрибута IDL Visual C++, а атрибут MIDL совпадают, это значит, что этот атрибут размещения Visual C++ в файле исходного кода приведет к idl-файле, содержащего его атрибут тёзки MIDL. Однако атрибут IDL Visual C++ не может предоставить всю функциональность атрибута MIDL.

Если не используется с Атрибуты модели COMАтрибуты IDL позволяют определять интерфейсы. Если исходный код компилироваться, атрибуты, используемые для определения созданный файл idl. При использовании с атрибутами модели COM в проекте библиотеки ATL, некоторые атрибуты IDL, например CoClassкод причины для вставки в проект.

Обратите внимание, что idl_quote позволяет использовать конструкции MIDL, которые не поддерживаются в текущей версии Visual C++. Это и другие атрибуты importlib и includelib idl-файлы инструкций необходимо использовать существующую в текущем проекте Visual C++.

Атрибут

Описание

aggregatable

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

appobject

Определяет coclass, как объект приложения, который связан с полным приложением EXE и указывает на то, что функции и свойства coclass глобально доступны в этой библиотеке типов.

async_uuid

Определяет UUID, инструктирует компилятор MIDL задаются и синхронные и асинхронные версии интерфейсов модели COM.

bindable

Указывает, что свойство поддерживает привязку данных.

call_as

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

case

Используется с switch_type атрибут в соединении.

CoClass

Устанавливает определение класса в idl-файл способ совместного класса.

Элемент управления

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

cpp_quote

Помещает указанную строку без символов кавычек в созданный файл заголовка.

defaultbind

Отображает одно свойство, связываемое лучше всего представляет объект.

defaultcollelem

Используется для оптимизации кода Visual Basic.

defaultvalue

Позволяет устанавливать значения по умолчанию для типизированного необязательных параметра.

default

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

defaultvtable

Определяет интерфейс, например по умолчанию vtable интерфейс для элемента управления.

dispinterface

Задает интерфейс в файле idl как интерфейс диспетчеризации.

displaybind

Указывает свойство, которое должно отображаться пользователю как связываемая.

dual

Задает интерфейс в файле idl как сдвоенный интерфейс.

запись

Определяет, экспортированные функции или константы в модуле, указав точки входа в DLL.

first_is

Определяет индекс первого элемента массива, которые необходимо передать.

helpcontext

Указывает идентификатор контекста, который позволяет пользователю просматривать сведения об этом элементе в файле Справки.

helpfile

Задает имя файла Справки библиотеки типов.

helpstringcontext

Указывает идентификатор раздела в файле справки .hlp или .chm.

helpstringdll

Указывает имя dll-библиотеки для использования выполнять поиск строки документа (локализация).

helpstring

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

hidden

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

idl_module

Определяет точки входа в DLL.

idl_quote

Позволяет атрибутам использования или конструкциям языка IDL, которые не поддерживаются в текущей версии Visual C++.

id

Указывает идентификатор DISPID для функции-члена (или свойство или метод в интерфейсе или диспетчерский интерфейс).

iid_is

Указывает идентификатор IID интерфейса модели COM, заданного на указатель интерфейса.

immediatebind

Показывает, что база данных будет уведомленна немедленно всех изменений к свойству данные-привязанного объекта.

importlib

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

import

Определяет другие idl, .odl или файл заголовка, содержащий определения необходимо ссылаться из основного файла idl.

include

Указывает один или более файлов заголовков, которые нужно включить в созданном файле idl.

includelib

Вызывает idl-файл или .h, которые нужно включить в созданном файле idl.

in

Указывает, что параметр для передачи из вызывающей процедуры к вызываемой процедуре.

last_is

Определяет индекс последнего элемента в массиве для отправки.

lcid

Позволяет передавать код языка для функции.

length_is

Определяет количество элементов массива, которые необходимо передать.

лицензировано

Указывает, что совместного класса, к которым применяется лицензирует и быть создан с помощью IClassFactory2.

local

Позволяет использовать компилятора MIDL как генератор заголовка при использовании в заголовке интерфейса. При использовании в отдельной функции обозначает локальную процедуру, для которой нет заглушки не формируются.

max_is

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

модуль

Указывает блок библиотеки в idl-файле.

ms_union

Контролирует выравнивание представлений сведениям о сети nonencapsulated соединений.

no_injected_text

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

nonbrowsable

Указывает, что член интерфейса не должен отображаться в обозревателе свойств.

noncreatable

Определяет объект, который не может быть создан самостоятельно.

nonextensible

Указывает, что IDispatch реализация включает только перечисленные свойства и методы в описании интерфейса и не может быть удлинена с дополнительными элементами во время выполнения.

Объект.

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

odl

Задает интерфейс в качестве интерфейса на языке описания объектов (ODL).

oleautomation

Указывает, что интерфейс совместимый с автоматизацией.

необязательно

Определяет необязательный параметр для функции-члена.

out

Задает параметры указателя, возвращаемых из вызываемой процедуры, вызывающей процедуре (от сервера к клиенту).

pointer_default

Определяет атрибут по умолчанию указателя для всех указателей, отличный от верхнего уровня указатели, отображаемые в списки параметров.

директива pragma

Помещает указанную строку без символов кавычек в созданный файл idl.

идентификатор progid

Указывает идентификатор progid для com-объекта.

propget

Определяет функции метода доступа к свойству (get).

propputref

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

propput

Определяет функцию параметра свойства.

ptr

Определяет указатель в виде полный указатель.

public

Гарантирует, что typedef переместится в библиотеку типов, несмотря на него нет ссылок из файла idl.

диапазон

Определяет диапазон допустимых значений аргументов или полей, значения которых устанавливаются во время выполнения.

readonly

Запрещает присвоение переменной.

ref

Задает указатель ссылки.

requestedit

Указывает, что свойство поддерживает инфраструктуру OnRequestEdit уведомление.

restricted

Определяет, что библиотека или член модуля, интерфейса или диспетчерский интерфейс не может вызываться произвольным образом.

retval

Назначает параметр, который получает возвращаемое значение члена.

size_is

Определяет размер памяти, выделенной для указанных размеров указателей, заданные размеры указателей на указанным размером и указателям, single или многомерным таблицам.

source

Указывает, что член класса, свойства или метода источник событий.

string

Указывает, что одномерный массив char" wchar_t" байтили эквивалентный массива или указателя в такое массив должны обрабатываться как строку.

switch_is

Определяет выражение или идентификатор, используемый как соединение дискриминантное, которое выбирает член объединения.

switch_type

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

transmit_as

Указывает компилятору связи, представленный тип, который клиентские и серверные приложения обрабатывают с переданным типом.

uidefault

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

unique

Задает уникальный указатель.

usesgetlasterror

Сообщает вызывающему объекту, если ошибка, вызывающий эту функцию, вызывающий объект может затем вызвать метод GetLastError извлечь код ошибки.

uuid

Указывает уникальный идентификатор класса или интерфейса.

v1_enum

Указывает, что заданный перечислимый тип был передан в качестве 32 сущность, а не 16-разрядное значение по умолчанию.

vararg

Указывает, что функция принимает переменное число аргументов.

vi_progid

Определяет версия-независимую форму программного идентификатора.

wire_marshal

Определяет тип данных, который будет использоваться для передачи конкретного приложения вместо этого типа данных.

См. также

Основные понятия

Ограничения атрибутов [перенаправление]

Другие ресурсы

Список атрибутов по группам