атрибут nocode
Атрибут [nocode] используется в заголовках ACF или с отдельными функциями, чтобы предотвратить создание кода клиентской заглушки.
[
nocode
[ , ACF-interface-attributes ]
]
interface interface-name
{
[ include filename-list ; ]
[ typedef [type-attribute-list] typename; ]
[ [ nocode [ , ACF-function-attributes ] ] function-name (
[ ACF-parameter-attributes ] parameter-name ;
...);
]
...
}
-
ACF-interface-attributes
-
Задает список из одного или нескольких атрибутов, которые применяются к интерфейсу в целом. Допустимые атрибуты включают [auto_handle] или [implicit_handle] и [код] или [nocode]. При наличии двух или более атрибутов интерфейса они должны быть разделены запятыми.
-
имя интерфейса
-
Указывает имя интерфейса. В режиме совместимости DCE имя интерфейса должно соответствовать имени интерфейса, указанного в IDL-файле. При использовании параметра компилятора MIDL /acf имя интерфейса в ACF и имя интерфейса в IDL-файле могут отличаться.
-
filename-list
-
Задает список из одного или нескольких имен файлов заголовков языка C, разделенных запятыми. Необходимо указать полное имя файла, включая расширение.
-
type-attribute-list
-
Задает список из одного или нескольких атрибутов, разделенных запятыми, которые применяются к указанному типу. Допустимые атрибуты типа включают [allocate].
-
Typename
-
Указывает тип, определенный в IDL-файле. Атрибуты типов в ACF можно применять только к типам, ранее определенным в IDL-файле.
-
ACF-function-attributes
-
Указывает атрибуты, которые применяются к функции в целом, например [comm_status]. Атрибуты функции заключаются в квадратные скобки. Разделяйте несколько атрибутов функции запятыми.
-
имя функции
-
Указывает имя функции, как определено в IDL-файле.
-
ACF-parameter-attributes
-
Задает атрибуты ACF, которые применяются к параметру. Обратите внимание, что к параметру можно применить ноль или несколько атрибутов. Разделяйте несколько атрибутов параметров запятыми. Атрибуты параметров ACF заключаются в квадратные скобки.
-
parameter-name
-
Задает параметр функции, как определено в IDL-файле. Каждый параметр для функции должен быть указан в той же последовательности и использовать то же имя, что и в IDL-файле.
Атрибут [nocode] может отображаться в заголовке ACF или применяться к отдельной функции.
Если атрибут [nocode] отображается в заголовке ACF, код клиентской заглушки не создается для любой удаленной функции, если у нее нет атрибута функции [code] . Атрибут [nocode] можно переопределить в заголовке отдельной функции, указав атрибут [code] в качестве атрибута функции.
Когда атрибут [nocode] отображается в списке атрибутов функции, код клиентской заглушки для функции не создается.
Код заглушки клиента не создается, если:
- Заголовок ACF содержит атрибут [nocode] .
- Атрибут [nocode] применяется к функции.
- Атрибут [local] применяется к функции в файле интерфейса.
В списке атрибутов функции может отображаться либо [code] , либо [nocode] , а выбранный может отображаться ровно один раз.
Атрибут [nocode] игнорируется при создании серверных заглушек. Его нельзя применять при создании заглушки сервера в режиме совместимости DCE.