Udostępnij za pośrednictwem


RemoteDelegateAdapter Class

This API supports the Visual Studio Tools for Applications infrastructure and is not intended to be used directly from your code.

Allows delegates to be invoked across application domain and process boundaries through an IRemoteDelegateContract interface.

Namespace:  Microsoft.VisualStudio.Tools.Applications
Assembly:  Microsoft.VisualStudio.Tools.Applications.Adapter.v9.0 (in Microsoft.VisualStudio.Tools.Applications.Adapter.v9.0.dll)

Syntax

'Declaration
Public NotInheritable Class RemoteDelegateAdapter _
    Inherits RemoteObjectAdapter _
    Implements IRemoteDelegateContract, IRemoteObjectContract, IContract
'Usage
Dim instance As RemoteDelegateAdapter
public sealed class RemoteDelegateAdapter : RemoteObjectAdapter, 
    IRemoteDelegateContract, IRemoteObjectContract, IContract
public ref class RemoteDelegateAdapter sealed : public RemoteObjectAdapter, 
    IRemoteDelegateContract, IRemoteObjectContract, IContract
public final class RemoteDelegateAdapter extends RemoteObjectAdapter implements IRemoteDelegateContract, IRemoteObjectContract, IContract

Remarks

IRemoteDelegateContract includes a special InvokeDelegate method for actual delegate invocation. This approach uses the protected base-class members to convert a RemoteArgument to a real object.

Developers typically write across application domain and process boundaries. But conceptually RemoteDelegateAdapter is a representation across a versioning boundary.

Inheritance Hierarchy

System.Object
  System.MarshalByRefObject
    System.AddIn.Pipeline.ContractBase
      Microsoft.VisualStudio.Tools.Applications.ContractAdapterBase
        Microsoft.VisualStudio.Tools.Applications.RemoteObjectAdapter
          Microsoft.VisualStudio.Tools.Applications.RemoteDelegateAdapter

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

See Also

Reference

RemoteDelegateAdapter Members

Microsoft.VisualStudio.Tools.Applications Namespace