Marshal::GetComInterfaceForObject Method (Object^, Type^, CustomQueryInterfaceMode)
Returns a pointer to an IUnknown interface that represents the specified interface on the specified object. Custom query interface access is controlled by the specified customization mode.
Assembly: mscorlib (in mscorlib.dll)
public: [SecurityCriticalAttribute] static IntPtr GetComInterfaceForObject( Object^ o, Type^ T, CustomQueryInterfaceMode mode )
Parameters
- o
-
Type:
System::Object^
The object that provides the interface.
- T
-
Type:
System::Type^
The type of interface that is requested.
- mode
-
Type:
System.Runtime.InteropServices::CustomQueryInterfaceMode
One of the enumeration values that indicates whether to apply an IUnknown::QueryInterface customization that is supplied by an ICustomQueryInterface.
Return Value
Type: System::IntPtrThe interface pointer that represents the interface for the object.
| Exception | Condition |
|---|---|
| ArgumentException | The T parameter is not an interface. -or- The type is not visible to COM. -or- The T parameter is a generic type. |
| InvalidCastException | The object o does not support the requested interface. |
| ArgumentNullException | The o parameter is null. -or- The T parameter is null. |
GetComInterfaceForObject(Object^, Type^, CustomQueryInterfaceMode)lets you specify whether to apply query interface customization. Use the GetComInterfaceForObject(Object^, Type^) overload to apply query interface customization by default.
requires full trust for the immediate caller. This member cannot be used by partially trusted or transparent code.
Available since 8
.NET Framework
Available since 4.0
Portable Class Library
Supported in: portable .NET platforms
Windows Phone
Available since 8.1