Marshal.GetComInterfaceForObjectInContext Method (Object, Type)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Returns an interface pointer that represents the specified interface for an object, if the caller is in the same context as that object.

Namespace:   System.Runtime.InteropServices
Assembly:  mscorlib (in mscorlib.dll)

public static IntPtr GetComInterfaceForObjectInContext(
	object o,
	Type t


Type: System.Object

The object that provides the interface.

Type: System.Type

The type of interface that is requested.

Return Value

Type: System.IntPtr

The interface pointer specified by t that represents the interface for the specified object, or null if the caller is not in the same context as the object.

Exception Condition

t is not an interface.


The type is not visible to COM.


o does not support the requested interface.


o is null.


t is null.

This method is the same as GetComInterfaceForObject except that it returns null if the caller is not in the same context as the object. It is particularly useful if you have an unmanaged method that expects to be passed an interface pointer.


requires full trust for the immediate caller. This member cannot be used by partially trusted or transparent code.

.NET Framework
Available since 2.0
Return to top