Marshal.GetIDispatchForObject(Object) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает интерфейс IDispatch из управляемого объекта.
public:
static IntPtr GetIDispatchForObject(System::Object ^ o);
[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);
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
static member GetIDispatchForObject : obj -> nativeint
static member GetIDispatchForObject : obj -> nativeint
[<System.Security.SecurityCritical>]
static member GetIDispatchForObject : obj -> nativeint
Public Shared Function GetIDispatchForObject (o As Object) As IntPtr
Параметры
- o
- Object
Объект, интерфейс которого IDispatch запрашивается.
Возвращаемое значение
nativeint
Указатель IDispatch для o параметра.
- Атрибуты
Исключения
o не поддерживает запрошенный интерфейс.
Комментарии
В управляемом коде вы редко работаете непосредственно с интерфейсом IDispatch .
GetIDispatchForObject Однако при вызове метода, предоставляющего параметр COM-объекта в качестве IntPtr типа, или с пользовательским маршалингом. Вызов объекта с этим методом приводит к добавочному числу ссылок на указатель интерфейса перед возвратом указателя. Всегда используется Marshal.Release для уменьшения количества ссылок после завершения работы с указателем.
Этот метод также можно использовать в управляемом объекте для получения указателя интерфейса на вызываемую оболочку COM для объекта. Дополнительные сведения см. в статье com Callable Wrapper.