Ключ "/target"
Параметр /target позволяет компилятору MIDL включить оптимизации, доступные только в последних версиях Windows. Параметр /target автоматически активирует дополнительные параметры.
midl /target level
-
level
-
Указывает целевой уровень, например NT50, NT51, NT60, NT61, NT62 или NT100.
Параметр /target автоматически активирует дополнительные коммутаторы в зависимости от операционной системы, как указано в следующей таблице:
Операционная система | /target level | Переключатели активированы |
---|---|---|
Windows 2000 | NT50 | /Oicf /error all /robust |
Windows XP | NT51 | /Oicf /error all /robust /protocol all |
Windows Vista | NT60 | /Oicf /error all /robust /protocol all |
Windows 7 | NT61 | /Oicf /error all /robust /protocol all |
Windows 8 | NT62 | /Oicf /error all /robust /protocol all |
Windows 10 | NT100 | /Oicf /error all /robust /protocol all |
Чтобы убедиться, что заглушка выполняется в системе, заданной параметром /target , midl выдает ошибку при наличии функции, доступной только в более поздней версии Windows. В следующей таблице указан минимальный уровень /target , необходимый для включения функции. Более высокие целевые уровни включают все функции из более низких целевых уровней.
Минимальный обязательный уровень /target | Компоненты |
---|---|
NT50 | /Надежные [сообщение] [async] [async_uuid] [notify] в режиме /Oicf [encode] или [decode] в режиме /Oicf |
NT51 | Поддержка 64-разрядной версии /protocol [partial_ignore] [force_allocate] |
NT60 | Принудительное маршалирование сложной структуры Дескриптора контекста в массиве или структуре Поддержка негабаритных строк [range] [type_strict_context_handle] |
NT61 | Для прямых вызовов заглушки COM для интерфейсов с менее чем 32 методами требуется связывание заглушки COM с OLE32.DLL. |
NT62 | Поддержка ARM Поддержка WinRT |
NT100 | Поддержка [system_handle] |
midl /target NT50