System.Runtime.InteropServices Пространство имен
В этой статье
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет широкий спектр членов, поддерживающих com-взаимодействие и службы вызова платформы. Если вы не знакомы с этими службами, обратитесь к взаимодействия с неуправляемым кодом.
Allow |
Позволяет неуправляемым методом вызывать управляемый метод. |
Automation |
Указывает, следует ли маршалировать тип с помощью маршалера автоматизации или пользовательского прокси-сервера и заглушки. |
Best |
Определяет, преобразуются ли символы Юникода в ближайшие соответствующие символы ANSI. |
BStr |
Маршалирует данные типа |
Class |
Указывает тип интерфейса класса, который должен быть создан для класса, доступного для COM, если интерфейс создается вообще. |
Co |
Задает идентификатор класса coclass, импортированного из библиотеки типов. |
Collections |
Небезопасный класс, предоставляющий набор методов для доступа к базовым представлениям коллекций данных. |
Com |
Указывает псевдоним COM для параметра или типа поля. |
Com |
Разрешает позднюю регистрацию обработчика событий. |
Com |
Указывает com-клиенту, что все классы в текущей версии сборки совместимы с классами в более ранней версии сборки. |
Com |
Указывает, что сведения о классе или интерфейсе были потеряны при импорте из библиотеки типов в сборку. |
Com |
Указывает интерфейс по умолчанию для предоставления COM. Этот класс не может быть унаследован. |
Com |
Определяет исходный интерфейс и класс, реализующий методы интерфейса событий, создаваемого при импорте сокласса из библиотеки типов COM. |
Com |
Предоставляет методы, позволяющие делегатам .NET, обрабатывающим события, добавлять и удаляться из COM-объектов. |
COMException |
Исключение, которое возникает при возврате нераспознанного HRESULT из вызова метода COM. |
Com |
Указывает, что тип атрибута был ранее определен в COM. |
Com |
Задает метод для вызова при регистрации сборки для использования из COM; это позволяет выполнять написанный пользователем код во время регистрации. |
Com |
Определяет список интерфейсов, предоставляемых в качестве источников событий COM для класса атрибутов. |
Com |
Указывает метод для вызова при отмене регистрации сборки для использования из COM; это позволяет выполнять написанный пользователем код во время процесса отмены регистрации. |
Com |
Управляет специальными возможностями отдельного управляемого типа или члена или всех типов в сборке в COM. |
Com |
Класс для управления оболочками типов COM IUnknown. |
Critical |
Представляет класс-оболочку для обработки ресурсов. |
Currency |
Упаковывает объекты маршалер должен маршалировать как |
Default |
Указывает значение перечисления CharSet. Этот класс не может быть унаследован. |
Default |
Указывает пути, используемые для поиска библиотек DLL, которые предоставляют функции для вызовов платформы. |
Default |
Задает значение по умолчанию параметра при вызове из языка, поддерживающего параметры по умолчанию. Этот класс не может быть унаследован. |
Dispatch |
Упаковывает объекты маршалер должен маршалировать как |
Disp |
Указывает идентификатор диспетчера COM (DISPID) метода, поля или свойства. |
Dll |
Указывает, что метод атрибута предоставляется неуправляемой библиотекой динамической компоновки (DLL) в качестве статической точки входа. |
Dynamic |
Атрибут, необходимый для любого типа, возвращаемого GetInterfaceImplementation(RuntimeTypeHandle). |
Error |
Упаковывает объекты маршалер должен маршалировать как |
Extensible |
Включает настройку управляемых объектов, которые расширяются от неуправляемых объектов во время создания. |
External |
Базовый тип исключения для всех исключений взаимодействия COM и структурированных исключений обработки исключений (SEH). |
Field |
Указывает физическое положение полей в неуправляемом представлении класса или структуры. |
GCHandle |
Предоставляет широкий спектр членов, поддерживающих com-взаимодействие и службы вызова платформы. Если вы не знакомы с этими службами, обратитесь к взаимодействия с неуправляемым кодом. |
Guid |
Предоставляет явный Guid, если автоматический GUID является нежелательным. |
Handle |
Отслеживает выдающиеся дескриптора и заставляет сборку мусора при достижении указанного порогового значения. |
IDispatch |
Указывает, какой |
Immutable |
Небезопасный класс, предоставляющий набор методов для доступа к базовым представлениям данных неизменяемых коллекций. |
Imported |
Указывает, что типы, определенные в сборке, изначально определены в библиотеке типов. |
In |
Указывает, что данные должны маршалироваться от вызывающего абонента вызывающей стороне, но не вернуться к вызывающей стороне. |
Interface |
Указывает, является ли управляемый интерфейс двойным, только диспетчером или |
Invalid |
Исключение возникает при использовании недопустимого COM-объекта. |
Invalid |
Исключение, возникающее маршалером при обнаружении аргумента типа варианта, который не может быть маршалирован в управляемый код. |
Json |
Предоставляет широкий спектр членов, поддерживающих com-взаимодействие и службы вызова платформы. Если вы не знакомы с этими службами, обратитесь к взаимодействия с неуправляемым кодом. |
LCIDConversion |
Указывает, что неуправляемая сигнатура метода ожидает параметра LCID. |
Library |
Указывает, что генератор источника должен создать функцию для маршалинга аргументов вместо того, чтобы полагаться на среду выполнения, чтобы создать эквивалентную функцию маршаллинга во время выполнения. |
Managed |
Предоставляет поддержку настройки заглушки взаимодействия пользователей в сценариях взаимодействия с управляемыми к COM. |
Marshal |
Предоставляет коллекцию методов для выделения неуправляемой памяти, копирования неуправляемых блоков памяти и преобразования управляемых в неуправляемые типы, а также других других методов, используемых при взаимодействии с неуправляемым кодом. |
Marshal |
Указывает, как маршалировать данные между управляемым и неуправляемным кодом. |
Marshal |
Исключение, которое создается маршалером при обнаружении MarshalAsAttribute он не поддерживает. |
Memory |
Предоставляет методы взаимодействия с Memory<T>, ReadOnlyMemory<T>, Span<T>и ReadOnlySpan<T>. |
Native |
Предоставляет API для управления собственными библиотеками. |
Native |
Этот класс содержит методы, которые в основном используются для управления собственной памятью. |
Optional |
Указывает, что параметр является необязательным. |
Out |
Указывает, что данные должны маршалироваться от вызываемого обратно вызывающего абонента. |
Posix |
Предоставляет данные для события PosixSignalRegistration. |
Posix |
Обрабатывает PosixSignal. |
Preserve |
Указывает, что преобразование подписи HRESULT, которое происходит во время вызовов взаимодействия COM, должно быть отложено. |
Primary |
Указывает, что сборка атрибутов является основной сборкой взаимодействия. |
Prog |
Позволяет пользователю указать ProgID класса. |
Registration |
Предоставляет набор служб для регистрации и отмены регистрации управляемых сборок для использования из COM. |
Runtime |
Предоставляет коллекцию методов |
Runtime |
Предоставляет сведения об установке среды выполнения .NET. |
Safe |
Исключение, возникающее, если ранг входящих |
Safe |
Исключение возникает, если тип входящего |
Safe |
Предоставляет управляемый буфер памяти, который можно использовать для чтения и записи. Пытается получить доступ к памяти за пределами управляемого буфера (неуправляемые и перезапуски) вызывают исключения. |
Safe |
Представляет класс-оболочку для дескрипторов операционной системы. Этот класс должен наследоваться. |
SEHException |
Представляет ошибки структурированной обработки исключений (SEH). |
Sequence |
Предоставляет коллекцию методов взаимодействия с ReadOnlySequence<T>. |
Set |
Этот атрибут устарел. |
Standard |
Заменяет стандартный маршалер среды CLR с бесплатным потоком на стандартный маршалер OLE STA. |
Struct |
Позволяет управлять физическим макетом полей данных класса или структуры в памяти. |
Suppress |
Указывает, что переход сборки мусора должен быть пропущен при вызове неуправляемой функции. |
Type |
Обеспечивает поддержку эквивалентности типов. |
Type |
Предоставляет набор служб, которые преобразуют управляемую сборку в библиотеку типов COM и наоборот. |
Type |
Содержит FUNCFLAGS, которые изначально импортировались для этого метода из библиотеки типов COM. |
Type |
Указывает, какой Type использует исключительно интерфейс. Этот класс не может быть унаследован. |
Type |
Содержит TYPEFLAGS, которые изначально импортировались для этого типа из библиотеки типов COM. |
Type |
Содержит VARFLAGS, которые изначально импортировались для этого поля из библиотеки типов COM. |
Type |
Указывает номер версии экспортируемой библиотеки типов. |
Unknown |
Упаковывает объекты маршалер должен маршалировать как |
Unmanaged |
Указывает соглашение о вызове, необходимое для вызова методов P/Invoke, реализованных в неуправляемом коде. |
Unmanaged |
Любой метод, помеченный UnmanagedCallersOnlyAttribute, можно вызывать непосредственно из машинного кода. Маркер функции можно загрузить в локальную переменную с помощью оператора |
Unmanaged |
Управляет поведением маршалинга подписи делегата, передаваемой как неуправляемый указатель функции на неуправляемый код или из неуправляемого кода. Этот класс не может быть унаследован. |
Variant |
Маршалирует данные типа |
Wasm |
Указывает, что P/Invoke, помеченный этим атрибутом, должен быть связан в качестве импорта WASM. |
Array |
Инкапсулирует массив и смещение в указанном массиве. |
BIND_OPTS |
Вместо этого используйте BIND_OPTS. |
BINDPTR |
Вместо этого используйте BINDPTR. |
CLong |
CLong — это неизменяемый тип значения, представляющий тип |
Com |
Двоичный интерфейс приложения для отправки функции com-интерфейса. |
Com |
Тип интерфейса и указатель на целевую VTable. |
CONNECTDATA |
Вместо этого используйте CONNECTDATA. |
CULong |
CULong — это неизменяемый тип значения, представляющий тип |
DISPPARAMS |
Вместо этого используйте DISPPARAMS. |
ELEMDESC |
Вместо этого используйте ELEMDESC. |
ELEMDESC. |
Вместо этого используйте ELEMDESC.DESCUNION. |
EXCEPINFO |
Вместо этого используйте EXCEPINFO. |
FILETIME |
Вместо этого используйте FILETIME. |
FUNCDESC |
Вместо этого используйте FUNCDESC. |
GCHandle |
Предоставляет способ доступа к управляемому объекту из неуправляемой памяти. |
GCHandle<T> |
Предоставляет широкий спектр членов, поддерживающих com-взаимодействие и службы вызова платформы. Если вы не знакомы с этими службами, обратитесь к взаимодействия с неуправляемым кодом. |
Handle |
Упаковывает управляемый объект с дескриптором в ресурс, передаваемый в неуправляемый код с помощью вызова платформы. |
IDLDESC |
Вместо этого используйте IDLDESC. |
NFloat |
NFloat — это неизменяемый тип значения, представляющий тип с плавающей запятой, имеющий тот же размер, что и собственный целочисленный размер.
Он предназначен для использования в качестве типа обмена на управляемой или неуправляемой границе для точного представления в неуправляемом коде API, которые используют псевдоним типа для |
OSPlatform |
Представляет платформу операционной системы. |
PARAMDESC |
Вместо этого используйте PARAMDESC. |
Pinned |
Предоставляет широкий спектр членов, поддерживающих com-взаимодействие и службы вызова платформы. Если вы не знакомы с этими службами, обратитесь к взаимодействия с неуправляемым кодом. |
STATSTG |
Вместо этого используйте STATSTG. |
TYPEATTR |
Вместо этого используйте TYPEATTR. |
TYPEDESC |
Вместо этого используйте TYPEDESC. |
TYPELIBATTR |
Вместо этого используйте TYPELIBATTR. |
VARDESC |
Вместо этого используйте VARDESC. |
VARDESC. |
Вместо этого используйте VARDESC.DESCUNION. |
Weak |
Предоставляет широкий спектр членов, поддерживающих com-взаимодействие и службы вызова платформы. Если вы не знакомы с этими службами, обратитесь к взаимодействия с неуправляемым кодом. |
_Activator |
Предоставляет класс Activator неуправляемого кода. |
_Assembly |
Предоставляет общедоступным членам класса Assembly неуправляемый код. |
_Assembly |
Предоставляет класс AssemblyBuilder неуправляемого кода. |
_Assembly |
Предоставляет класс AssemblyName неуправляемого кода. |
_Attribute |
Предоставляет класс Attribute неуправляемого кода. |
_Constructor |
Предоставляет класс ConstructorBuilder неуправляемого кода. |
_Constructor |
Предоставляет общедоступным членам класса ConstructorInfo неуправляемый код. |
_Custom |
Предоставляет класс CustomAttributeBuilder неуправляемого кода. |
_Enum |
Предоставляет класс EnumBuilder неуправляемого кода. |
_Event |
Предоставляет класс EventBuilder неуправляемого кода. |
_Event |
Предоставляет общедоступным членам класса EventInfo неуправляемый код. |
_Exception |
Предоставляет общедоступным членам класса Exception неуправляемый код. |
_Field |
Предоставляет класс FieldBuilder неуправляемого кода. |
_Field |
Предоставляет общедоступным членам класса FieldInfo неуправляемый код. |
_ILGenerator |
Предоставляет класс ILGenerator неуправляемого кода. |
_Local |
Предоставляет класс LocalBuilder неуправляемого кода. |
_Member |
Предоставляет общедоступным членам класса MemberInfo неуправляемый код. |
_Method |
Предоставляет общедоступным членам класса MethodBase неуправляемый код. |
_Method |
Предоставляет класс MethodBuilder неуправляемого кода. |
_Method |
Предоставляет общедоступным членам класса MethodInfo неуправляемый код. |
_Method |
Предоставляет класс MethodRental неуправляемого кода. |
_Module |
Предоставляет класс Module неуправляемого кода. |
_Module |
Предоставляет класс ModuleBuilder неуправляемого кода. |
_Parameter |
Предоставляет класс ParameterBuilder неуправляемого кода. |
_Parameter |
Предоставляет класс ParameterInfo неуправляемого кода. |
_Property |
Предоставляет класс PropertyBuilder неуправляемого кода. |
_Property |
Предоставляет общедоступным членам класса PropertyInfo неуправляемый код. |
_Signature |
Предоставляет класс SignatureHelper неуправляемого кода. |
_Thread |
Предоставляет класс Thread неуправляемого кода. |
_Type |
Предоставляет общедоступные члены класса Type неуправляемого кода. |
_Type |
Предоставляет класс TypeBuilder неуправляемого кода. |
ICustom |
Предоставляет клиентам способ доступа к фактическому объекту, а не объект адаптера, переданный пользовательским маршалером. |
ICustom |
Позволяет пользователям писать код активации для управляемых объектов, расширяющих MarshalByRefObject. |
ICustom |
Предоставляет пользовательские оболочки для обработки вызовов методов. |
ICustom |
Позволяет разработчикам предоставлять пользовательскую управляемую реализацию метода IUnknown::QueryInterface(REFIID riid, void **ppvObject). |
IDynamic |
Интерфейс, используемый для участия в сбое приведения типов. |
IRegistration |
Предоставляет набор служб для регистрации и отмены регистрации управляемых сборок для использования из COM. |
IType |
Предоставляет набор служб, которые преобразуют управляемую сборку в библиотеку типов COM и наоборот. |
IType |
Предоставляет контроль над регистром имен при экспорте в библиотеку типов. |
IType |
Предоставляет механизм обратного вызова для преобразователя сборок для информирования вызывающего объекта о состоянии преобразования и привлечения вызывающего объекта в сам процесс преобразования. |
IType |
Предоставляет механизм обратного вызова для преобразователя библиотеки типов для информирования вызывающего объекта о состоянии преобразования и привлечения вызывающего объекта в сам процесс преобразования. |
UCOMIBind |
Вместо этого используйте BIND_OPTS. |
UCOMIConnection |
Вместо этого используйте IConnectionPoint. |
UCOMIConnection |
Вместо этого используйте IConnectionPointContainer. |
UCOMIEnum |
Вместо этого используйте IEnumConnectionPoints. |
UCOMIEnum |
Вместо этого используйте IEnumConnections. |
UCOMIEnum |
Вместо этого используйте IEnumMoniker. |
UCOMIEnum |
Вместо этого используйте IEnumString. |
UCOMIEnumVARIANT |
Вместо этого используйте IEnumVARIANT. |
UCOMIMoniker |
Вместо этого используйте IMoniker. |
UCOMIPersist |
Вместо этого используйте IPersistFile. |
UCOMIRunning |
Вместо этого используйте IRunningObjectTable. |
UCOMIStream |
Вместо этого используйте IStream. |
UCOMIType |
Вместо этого используйте ITypeComp. |
UCOMIType |
Вместо этого используйте ITypeInfo. |
UCOMIType |
Вместо этого используйте ITypeLib. |
Architecture |
Указывает архитектуру процессора. |
Assembly |
Определяет набор флагов, используемых при регистрации сборок. |
CALLCONV |
Вместо этого используйте CALLCONV. |
Calling |
Указывает соглашение о вызове, необходимое для вызова методов, реализованных в неуправляемом коде. |
Char |
Определяет, какой набор символов должен использовать маршалированные строки. |
Class |
Определяет тип интерфейса класса, созданного для класса. |
Com |
Определяет, как предоставить интерфейс COM. |
Com |
Описывает тип com-члена. |
Create |
Задает флаги для метода GetOrCreateComInterfaceForObject(Object, CreateComInterfaceFlags). |
Create |
Задает флаги для метода GetOrCreateObjectForComInstance(IntPtr, CreateObjectFlags). |
Custom |
Указывает, могут ли вызовы метода GetComInterfaceForObject(Object, Type, CustomQueryInterfaceMode)IUnknown::QueryInterface использовать интерфейс ICustomQueryInterface. |
Custom |
Предоставляет возвращаемые значения для метода GetInterface(Guid, IntPtr). |
DESCKIND |
Вместо этого используйте DESCKIND. |
Dll |
Указывает пути, используемые для поиска библиотек DLL, которые предоставляют функции для вызовов платформы. |
Exporter |
Описывает обратные вызовы, которые экспортер библиотеки типов делает при экспорте библиотеки типов. |
FUNCFLAGS |
Вместо этого используйте FUNCFLAGS. |
FUNCKIND |
Вместо этого используйте FUNCKIND. |
GCHandle |
Представляет типы дескрипторов, которые могут выделить тип GCHandle. |
IDispatch |
Указывает, какую реализацию |
IDLFLAG |
Вместо этого используйте IDLFLAG. |
IMPLTYPEFLAGS |
Вместо этого используйте IMPLTYPEFLAGS. |
Importer |
Описывает обратные вызовы, которые импортирует библиотека типов при импорте библиотеки типов. |
INVOKEKIND |
Вместо этого используйте INVOKEKIND. |
Layout |
Управляет макетом объекта при экспорте в неуправляемый код. |
LIBFLAGS |
Вместо этого используйте LIBFLAGS. |
PARAMFLAG |
Вместо этого используйте PARAMFLAG. |
Posix |
Указывает номер сигнала POSIX. |
Registration |
Задает набор контекстов выполнения, в которых объект класса будет доступен для запросов на создание экземпляров. |
Registration |
Определяет типы подключений к объекту класса. |
String |
Указывает, как следует маршалировать строки для созданных p/вызовов |
SYSKIND |
Вместо этого используйте SYSKIND. |
TYPEFLAGS |
Вместо этого используйте TYPEFLAGS. |
TYPEKIND |
Вместо этого используйте TYPEKIND. |
Type |
Указывает, как следует создать библиотеку типов. |
Type |
Описывает исходные параметры |
Type |
Указывает, как должна производиться сборка. |
Type |
Описывает исходные параметры TYPEFLAGS в библиотеке типов COM, из которой был импортирован тип. |
Type |
Описывает исходные параметры VARFLAGS в библиотеке типов COM, из которой была импортирована переменная. |
Unmanaged |
Определяет, как маршалировать параметры или поля в неуправляемый код. |
Var |
Указывает, как маршалировать элементы массива, когда массив маршалируется из управляемого в неуправляемый код в виде SafeArray. |
VARFLAGS |
Вместо этого используйте VARFLAGS. |
Dll |
Предоставляет делегат, используемый для разрешения собственных библиотек через обратный вызов. |
Object |
Создает COM-объект. |
Члены этого пространства имен предоставляют несколько категорий функциональных возможностей, как показано в следующей таблице. Поведение маршалинга атрибутов, например упорядочивание структур или способ представления строк. Наиболее важными атрибутами являются DllImportAttribute, которые используются для определения методов вызова платформы для доступа к неуправляемых API и MarshalAsAttribute, которые используются для указания того, как данные маршалируются между управляемой и неуправляемой памятью.
Отзыв о .NET
.NET — это проект с открытым исходным кодом. Выберите ссылку, чтобы оставить отзыв: