﻿<?xml version="1.0" encoding="utf-8"?><Type Name="RealProxy" FullName="System.Runtime.Remoting.Proxies.RealProxy"><TypeSignature Maintainer="auto" Language="C#" Value="public abstract class RealProxy" /><TypeSignature Language="ILAsm" Value=".class public sequential ansi abstract beforefieldinit RealProxy extends System.Object" /><AssemblyInfo><AssemblyName>mscorlib</AssemblyName><AssemblyPublicKey>[00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00]</AssemblyPublicKey><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the &lt;link location="node:gtk-sharp/programming/threads"&gt;Gtk# Thread Programming&lt;/link&gt; for details.</ThreadSafetyStatement><Base><BaseTypeName>System.Object</BaseTypeName></Base><Interfaces /><Attributes><Attribute><AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName></Attribute></Attributes><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>The <see cref="T:System.Runtime.Remoting.Proxies.RealProxy" /> class is the abstract base class from which proxies must derive.</para><para>A client that uses an object across any kind of a remoting boundary is actually using a transparent proxy for the object. The transparent proxy provides the illusion that the actual object resides in the client's space. It achieves this by forwarding calls made on it to the real object using the remoting infrastructure.</para><para>The transparent proxy is itself housed by an instance of a managed runtime class of type <see cref="T:System.Runtime.Remoting.Proxies.RealProxy" />. The <see cref="T:System.Runtime.Remoting.Proxies.RealProxy" /> implements a part of the functionality that is needed to forward the operations from the transparent proxy. Note that a proxy object inherits the associated semantics of managed objects such as garbage collection, support for fields and methods, and can be extended to form new classes. The proxy has a dual nature: it acts as an object of the same class as the remote object (transparent proxy), and it is a managed object itself.</para><para>A proxy object can be used without regard to any remoting subdivisions within a <see cref="T:System.AppDomain" />.</para><block subset="none" type="note"><para>This class makes a link demand and an inheritance demand at the class level. A <see cref="T:System.Security.SecurityException" /> is thrown when either the immediate caller or the derived class does not have infrastructure permission. For details about security demands, see <format type="text/html"><a href="A33FD5F9-2DE9-4653-A4F0-D9DF25082C4D">[&lt;topic://cpconLinkDemands&gt;]</a></format> and <format type="text/html"><a href="28B9ADBB-8F08-4F10-B856-DBF59EB932D9">[&lt;topic://cpconInheritanceDemands&gt;]</a></format>.</para></block></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Provides base functionality for proxies.</para></summary></Docs><Members><Member MemberName=".ctor"><MemberSignature Language="C#" Value="protected RealProxy ();" /><MemberSignature Language="ILAsm" Value=".method familyhidebysig specialname rtspecialname instance void .ctor() cil managed" /><MemberType>Constructor</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue /><Parameters /><Docs><remarks>To be added</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Initializes a new instance of the <see cref="T:System.Runtime.Remoting.Proxies.RealProxy" /> class with default values.</para></summary></Docs></Member><Member MemberName=".ctor"><MemberSignature Language="C#" Value="protected RealProxy (Type classToProxy);" /><MemberSignature Language="ILAsm" Value=".method familyhidebysig specialname rtspecialname instance void .ctor(class System.Type classToProxy) cil managed" /><MemberType>Constructor</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue /><Parameters><Parameter Name="classToProxy" Type="System.Type" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>The current method creates a transparent proxy, which can be accessed through the <see cref="M:System.Runtime.Remoting.Proxies.RealProxy.GetTransparentProxy" /> method.</para><para>A client that uses an object across any kind of a remoting boundary is actually using a transparent proxy for the object. The transparent proxy gives the impression that the actual object resides in the client's space. It achieves this by forwarding calls made on it to the real object using the remoting infrastructure.</para><para>The transparent proxy is housed by an instance of a managed runtime class <see cref="T:System.Runtime.Remoting.Proxies.RealProxy" />. The <see cref="T:System.Runtime.Remoting.Proxies.RealProxy" /> implements a part of the functionality that is needed to forward the operations from the transparent proxy. Note that a proxy object inherits the associated semantics of managed objects such as garbage collection and support for fields and methods, and can be extended to form new classes. The proxy has a dual nature: it acts as an object of the same class as the remote object (transparent proxy), and is a managed object itself.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Initializes a new instance of the <see cref="T:System.Runtime.Remoting.Proxies.RealProxy" /> class that represents a remote object of the specified <see cref="T:System.Type" />.</para></summary><param name="classToProxy"><attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Type" /> of the remote object for which to create a proxy. </param></Docs></Member><Member MemberName=".ctor"><MemberSignature Language="C#" Value="protected RealProxy (Type classToProxy, IntPtr stub, object stubData);" /><MemberSignature Language="ILAsm" Value=".method familyhidebysig specialname rtspecialname instance void .ctor(class System.Type classToProxy, native int stub, object stubData) cil managed" /><MemberType>Constructor</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue /><Parameters><Parameter Name="classToProxy" Type="System.Type" /><Parameter Name="stub" Type="System.IntPtr" /><Parameter Name="stubData" Type="System.Object" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>The stub data is used by custom proxy users to decide what to do with an incoming method call. For example, the stub data might be information about the server's context that you can use to determine whether to execute the call locally, or send it through the remoting infrastructure.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Initializes a new instance of the <see cref="T:System.Runtime.Remoting.Proxies.RealProxy" /> class.</para></summary><param name="classToProxy"><attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Type" /> of the remote object for which to create a proxy. </param><param name="stub"><attribution license="cc4" from="Microsoft" modified="false" />A stub to associate with the new proxy instance. </param><param name="stubData"><attribution license="cc4" from="Microsoft" modified="false" />The stub data to set for the specified stub and the new proxy instance. </param></Docs></Member><Member MemberName="AttachServer"><MemberSignature Language="C#" Value="protected void AttachServer (MarshalByRefObject s);" /><MemberSignature Language="ILAsm" Value=".method familyhidebysig instance void AttachServer(class System.MarshalByRefObject s) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="s" Type="System.MarshalByRefObject" /></Parameters><Docs><remarks>To be added</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Attaches the current proxy instance to the specified remote <see cref="T:System.MarshalByRefObject" />.</para></summary><param name="s"><attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.MarshalByRefObject" /> that the current proxy instance represents. </param></Docs></Member><Member MemberName="CreateObjRef"><MemberSignature Language="C#" Value="public virtual System.Runtime.Remoting.ObjRef CreateObjRef (Type requestedType);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Runtime.Remoting.ObjRef CreateObjRef(class System.Type requestedType) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Runtime.Remoting.ObjRef</ReturnType></ReturnValue><Parameters><Parameter Name="requestedType" Type="System.Type" /></Parameters><Docs><remarks>To be added</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Creates an <see cref="T:System.Runtime.Remoting.ObjRef" /> for the specified object type, and registers it with the remoting infrastructure as a client-activated object.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>A new instance of <see cref="T:System.Runtime.Remoting.ObjRef" /> that is created for the specified type.</para></returns><param name="requestedType"><attribution license="cc4" from="Microsoft" modified="false" />The object type that an <see cref="T:System.Runtime.Remoting.ObjRef" /> is created for. </param></Docs></Member><Member MemberName="DetachServer"><MemberSignature Language="C#" Value="protected MarshalByRefObject DetachServer ();" /><MemberSignature Language="ILAsm" Value=".method familyhidebysig instance class System.MarshalByRefObject DetachServer() cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.MarshalByRefObject</ReturnType></ReturnValue><Parameters /><Docs><remarks>To be added</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Detaches the current proxy instance from the remote server object that it represents.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>The detached server object.</para></returns></Docs></Member><Member MemberName="GetCOMIUnknown"><MemberSignature Language="C#" Value="public virtual IntPtr GetCOMIUnknown (bool fIsMarshalled);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance native int GetCOMIUnknown(bool fIsMarshalled) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.IntPtr</ReturnType></ReturnValue><Parameters><Parameter Name="fIsMarshalled" Type="System.Boolean" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>If the proxy is requested for marshaling, then an IUnknown interface for the object represented by the current proxy instance is returned. If an IUnknown was previously cached by the <see cref="M:System.Runtime.Remoting.Proxies.RealProxy.SetCOMIUnknown(System.IntPtr)" /> method, then that instance is returned; otherwise, a new instance is returned.</para><para>If the proxy is requested not for marshaling but for communication with unmanaged objects in the current process, then a <format type="text/html"><a href="D04BE3B5-27B9-4F5B-8469-A44149FABF78">[&lt;topic://cpconcomcallablewrapper&gt;]</a></format> (CCW), which can be used in the current process for communication through COM, is returned.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Requests an unmanaged reference to the object represented by the current proxy instance.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>A pointer to a <format type="text/html"><a href="D04BE3B5-27B9-4F5B-8469-A44149FABF78">[&lt;topic://cpconcomcallablewrapper&gt;]</a></format> if the object reference is requested for communication with unmanaged objects in the current process through COM, or a pointer to a cached or newly generated IUnknown COM interface if the object reference is requested for marshaling to a remote location.</para></returns><param name="fIsMarshalled"><attribution license="cc4" from="Microsoft" modified="false" />true if the object reference is requested for marshaling to a remote location; false if the object reference is requested for communication with unmanaged objects in the current process through COM. </param></Docs></Member><Member MemberName="GetObjectData"><MemberSignature Language="C#" Value="public virtual void GetObjectData (System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void GetObjectData(class System.Runtime.Serialization.SerializationInfo info, valuetype System.Runtime.Serialization.StreamingContext context) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="info" Type="System.Runtime.Serialization.SerializationInfo" /><Parameter Name="context" Type="System.Runtime.Serialization.StreamingContext" /></Parameters><Docs><remarks>To be added</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Adds the transparent proxy of the object represented by the current instance of <see cref="T:System.Runtime.Remoting.Proxies.RealProxy" /> to the specified <see cref="T:System.Runtime.Serialization.SerializationInfo" />.</para></summary><param name="info"><attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> into which the transparent proxy is serialized. </param><param name="context"><attribution license="cc4" from="Microsoft" modified="false" />The source and destination of the serialization. </param></Docs></Member><Member MemberName="GetProxiedType"><MemberSignature Language="C#" Value="public Type GetProxiedType ();" /><MemberSignature Language="ILAsm" Value=".method public hidebysig instance class System.Type GetProxiedType() cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Type</ReturnType></ReturnValue><Parameters /><Docs><remarks>To be added</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Returns the <see cref="T:System.Type" /> of the object that the current instance of <see cref="T:System.Runtime.Remoting.Proxies.RealProxy" /> represents.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>The <see cref="T:System.Type" /> of the object that the current instance of <see cref="T:System.Runtime.Remoting.Proxies.RealProxy" /> represents.</para></returns></Docs></Member><Member MemberName="GetStubData"><MemberSignature Language="C#" Value="public static object GetStubData (System.Runtime.Remoting.Proxies.RealProxy rp);" /><MemberSignature Language="ILAsm" Value=".method public static hidebysig object GetStubData(class System.Runtime.Remoting.Proxies.RealProxy rp) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Object</ReturnType></ReturnValue><Parameters><Parameter Name="rp" Type="System.Runtime.Remoting.Proxies.RealProxy" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>The stub data is used by custom proxy users to decide what to do with an incoming method call. For example, the stub data might be information about the server's context that you can use to determine whether to execute the call locally, or send it through the remoting infrastructure.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Retrieves stub data that is stored for the specified proxy.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>Stub data for the specified proxy.</para></returns><param name="rp"><attribution license="cc4" from="Microsoft" modified="false" />The proxy for which stub data is requested. </param></Docs></Member><Member MemberName="GetTransparentProxy"><MemberSignature Language="C#" Value="public virtual object GetTransparentProxy ();" /><MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance object GetTransparentProxy() cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Object</ReturnType></ReturnValue><Parameters /><Docs><remarks>To be added</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Returns the transparent proxy for the current instance of <see cref="T:System.Runtime.Remoting.Proxies.RealProxy" />.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>The transparent proxy for the current proxy instance.</para></returns></Docs></Member><Member MemberName="GetUnwrappedServer"><MemberSignature Language="C#" Value="protected MarshalByRefObject GetUnwrappedServer ();" /><MemberSignature Language="ILAsm" Value=".method familyhidebysig instance class System.MarshalByRefObject GetUnwrappedServer() cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.MarshalByRefObject</ReturnType></ReturnValue><Parameters /><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>The <see cref="M:System.Runtime.Remoting.Proxies.RealProxy.GetUnwrappedServer" /> method is used in scenarios involving an external <see cref="T:System.Runtime.Remoting.Contexts.Context" /> in the same <see cref="T:System.AppDomain" />.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Returns the server object that is represented by the current proxy instance.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>The server object that is represented by the current proxy instance.</para></returns></Docs></Member><Member MemberName="InitializeServerObject"><MemberSignature Language="C#" Value="public System.Runtime.Remoting.Activation.IConstructionReturnMessage InitializeServerObject (System.Runtime.Remoting.Activation.IConstructionCallMessage ctorMsg);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig instance class System.Runtime.Remoting.Activation.IConstructionReturnMessage InitializeServerObject(class System.Runtime.Remoting.Activation.IConstructionCallMessage ctorMsg) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><Attributes><Attribute><AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName></Attribute></Attributes><ReturnValue><ReturnType>System.Runtime.Remoting.Activation.IConstructionReturnMessage</ReturnType></ReturnValue><Parameters><Parameter Name="ctorMsg" Type="System.Runtime.Remoting.Activation.IConstructionCallMessage" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>If the <paramref name="ctorMsg" /> parameter is null, then the <see cref="M:System.Runtime.Remoting.Proxies.RealProxy.InitializeServerObject(System.Runtime.Remoting.Activation.IConstructionCallMessage)" /> method calls the default constructor for the new instance of the remote object that is represented by the current <see cref="T:System.Runtime.Remoting.Proxies.RealProxy" />.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Initializes a new instance of the object <see cref="T:System.Type" /> of the remote object that the current instance of <see cref="T:System.Runtime.Remoting.Proxies.RealProxy" /> represents with the specified <see cref="T:System.Runtime.Remoting.Activation.IConstructionCallMessage" />.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>The result of the construction request.</para></returns><param name="ctorMsg"><attribution license="cc4" from="Microsoft" modified="false" />A construction call message that contains the constructor parameters for the new instance of the remote object that is represented by the current <see cref="T:System.Runtime.Remoting.Proxies.RealProxy" />. Can be null. </param></Docs></Member><Member MemberName="Invoke"><MemberSignature Language="C#" Value="public abstract System.Runtime.Remoting.Messaging.IMessage Invoke (System.Runtime.Remoting.Messaging.IMessage msg);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Runtime.Remoting.Messaging.IMessage Invoke(class System.Runtime.Remoting.Messaging.IMessage msg) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Runtime.Remoting.Messaging.IMessage</ReturnType></ReturnValue><Parameters><Parameter Name="msg" Type="System.Runtime.Remoting.Messaging.IMessage" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>When the transparent proxy that is backed by the <see cref="T:System.Runtime.Remoting.Proxies.RealProxy" /> is called, it delegates the calls to the <see cref="M:System.Runtime.Remoting.Proxies.RealProxy.Invoke(System.Runtime.Remoting.Messaging.IMessage)" /> method. The <see cref="M:System.Runtime.Remoting.Proxies.RealProxy.Invoke(System.Runtime.Remoting.Messaging.IMessage)" /> method transforms the message in the <paramref name="msg" /> parameter into a <see cref="T:System.Runtime.Remoting.Messaging.IMethodCallMessage" />, and sends it to the remote object that is represented by the current instance of <see cref="T:System.Runtime.Remoting.Proxies.RealProxy" />.</para><para>The <see cref="T:System.Runtime.Remoting.Messaging.IMessage" /> parameter provides a dictionary through the <see cref="P:System.Runtime.Remoting.Messaging.IMessage.Properties" /> property. The dictionary contains name/value pairs of information about the method call, such as the name of the method called and its parameters.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>When overridden in a derived class, invokes the method that is specified in the provided <see cref="T:System.Runtime.Remoting.Messaging.IMessage" /> on the remote object that is represented by the current instance.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>The message returned by the invoked method, containing the return value and any out or ref parameters.</para></returns><param name="msg"><attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.Runtime.Remoting.Messaging.IMessage" /> that contains a <see cref="T:System.Collections.IDictionary" /> of information about the method call. </param></Docs></Member><Member MemberName="SetCOMIUnknown"><MemberSignature Language="C#" Value="public virtual void SetCOMIUnknown (IntPtr i);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void SetCOMIUnknown(native int i) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="i" Type="System.IntPtr" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>When an unmanaged proxy attempts to communicate with the common language runtime through COM, the runtime resolves the remote object that is represented by the unmanaged proxy. If the remote object is managed and also resides in a common language environment, then instead of communicating with it through distributed COM, the object is sent to the current process.</para><para>If the remote object is not derived from <see cref="T:System.MarshalByRefObject" />, then it is serialized and copied to the current location. If it is derived from <see cref="T:System.MarshalByRefObject" />, then it returns a transparent proxy, and the remoting infrastructure caches the unmanaged proxy (the IUnknown interface) in the transparent proxy for future use.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Stores an unmanaged proxy of the object that is represented by the current instance.</para></summary><param name="i"><attribution license="cc4" from="Microsoft" modified="false" />A pointer to the IUnknown interface for the object that is represented by the current proxy instance. </param></Docs></Member><Member MemberName="SetStubData"><MemberSignature Language="C#" Value="public static void SetStubData (System.Runtime.Remoting.Proxies.RealProxy rp, object stubData);" /><MemberSignature Language="ILAsm" Value=".method public static hidebysig void SetStubData(class System.Runtime.Remoting.Proxies.RealProxy rp, object stubData) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="rp" Type="System.Runtime.Remoting.Proxies.RealProxy" /><Parameter Name="stubData" Type="System.Object" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>The stub data is used by custom proxy users to decide what to do with an incoming method call. For example, the stub data might be information about the server's context that you can use to determine whether to execute the call locally, or send it through the remoting infrastructure.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Sets the stub data for the specified proxy.</para></summary><param name="rp"><attribution license="cc4" from="Microsoft" modified="false" />The proxy for which to set stub data. </param><param name="stubData"><attribution license="cc4" from="Microsoft" modified="false" />The new stub data. </param></Docs></Member><Member MemberName="SupportsInterface"><MemberSignature Language="C#" Value="public virtual IntPtr SupportsInterface (ref Guid iid);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance native int SupportsInterface(valuetype System.Guid iid) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.IntPtr</ReturnType></ReturnValue><Parameters><Parameter Name="iid" Type="System.Guid&amp;" RefType="ref" /></Parameters><Docs><param name="iid">To be added: an object of type 'Guid&amp;'</param><summary>To be added</summary><returns>To be added: an object of type 'IntPtr'</returns><remarks>To be added</remarks></Docs></Member></Members></Type>