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


атрибут type_strict_context_handle

Используйте [type_strict_context_handle] в файле ACF, чтобы задать ограничения для дескрипторов контекста.

[ 
    type_strict_context_handle 
    [, interface-attribute-list] 
] 
interface interface-name
{
    interface-definition-statements
}

Параметры

interface-attribute-list

Другие атрибуты ACF, которые применяются к интерфейсу в целом. Допустимые атрибуты включают auto_handle, implicit_handle, explicit_handle и optimize, code или nocode. Разделяйте несколько атрибутов запятыми.

interface-name

Имя интерфейса.

interface-definition-statements

Одна или несколько инструкций MIDL, определяющих элементы интерфейса.

Комментарии

Чтобы использовать этот атрибут, при выполнении midl.exe флагу -target необходимо задать значение NT60 (или выше).

[type_strict_context_handle] — это функциональная надмножество [strict_context_handle]. В [strict_context_handle] идентификатор типа дескриптора всегда равен 0; в [type_strict_context_handle] уникальный идентификатор типа назначается компилятором MIDL.

Рекомендуется использовать [type_strict_context_handle], а не [strict_context_handle]. Дескрипторы контекста по умолчанию не связаны с определенным типом. Если в одном процессе используются несколько типов дескрипторов контекста, вредоносный клиент может передать дескриптор контекста вместо другого для получения нежелательных результатов. Использование [type_strict_context_handle] позволяет приложениям обеспечивать согласованность типов обработки контекста и предотвращать использование типов дескрипторов контекста.

Дескриптор контекста с атрибутом [type_strict_context_handle] также не может быть атрибутом [strict_context_handle].

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

Файл конфигурации приложения (ACF)

Код

Дескрипторы контекста

context_handle_serialize

context_handle_noserialize

explicit_handle

implicit_handle

nocode

Оптимизировать

strict_context_handle