Marshal.GetIDispatchForObject(Object) Метод

Определение

Возвращает интерфейс IDispatch из управляемого объекта.

[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public static IntPtr GetIDispatchForObject (object o);
public static IntPtr GetIDispatchForObject (object o);
[System.Security.SecurityCritical]
public static IntPtr GetIDispatchForObject (object o);

Параметры

o
Object

Объект, для которого запрашивается интерфейс IDispatch.

Возвращаемое значение

IntPtr

Указатель IDispatch для параметра o.

Атрибуты

Исключения

Параметр o не поддерживает запрошенный интерфейс.

Комментарии

В управляемом коде вы редко работаете напрямую с интерфейсом IDispatch . Однако это полезно при вызове метода, GetIDispatchForObject который предоставляет параметр COM-объекта в качестве IntPtr типа или с пользовательским маршалингом. Вызов объекта с помощью этого метода приводит к тому, что количество ссылок увеличивается в указателе интерфейса перед возвратом указателя. Всегда используйте для Marshal.Release уменьшения количества ссылок после завершения работы с указателем.

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

Применяется к

Продукт Версии
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.1

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