This documentation is archived and is not being maintained.

IObjectHandle Interface

Defines the interface for unwrapping marshal-by-value objects from indirection.

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

[GuidAttribute("C460E2B4-E199-412a-8456-84DC3E4838C3")] 
[ComVisibleAttribute(true)] 
[InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)] 
public interface IObjectHandle
/** @attribute GuidAttribute("C460E2B4-E199-412a-8456-84DC3E4838C3") */ 
/** @attribute ComVisibleAttribute(true) */ 
/** @attribute InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown) */ 
public interface IObjectHandle
GuidAttribute("C460E2B4-E199-412a-8456-84DC3E4838C3") 
ComVisibleAttribute(true) 
InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown) 
public interface IObjectHandle
Not applicable.

Marshal-by-value objects can be returned through an indirection, allowing the caller to control when the object is loaded into their domain. The caller can unwrap the object from the indirection through this interface.

The class implementing the IObjectHandle interface can be used to pass an object (in a wrapped state) between multiple application domains without loading the metadata for the wrapped object in each AppDomain through which the IObjectHandle travels. Thus, the IObjectHandle class gives the caller control of when the Type of the remote object is loaded into their domain.

Windows 98, Windows Server 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0, 1.1, 1.0
Show: