This documentation is archived and is not being maintained.

Managed Extensions for C++ and .NET Remoting Tutorial

Visual Studio .NET 2003

.NET remoting provides a flexible distributed object architecture. Because most developers who implemented sophisticated COM objects and servers used C++ and ATL, they can leverage legacy libraries and components and use Managed Extensions for C++ to implement .NET remoting solutions.

In this tutorial, you will perform the following tasks:

  • Compare .NET remoting and DCOM.
  • Manage the lifetime of remote objects.
  • Implement marshal-by-value objects.
  • Invoke remote asynchronously.
  • Extend the .NET remoting infrastructure using a custom channel sink.
Note   This tutorial will not discuss programmatic vs. configuration file-based configuration of the remoting infrastructure.

In This Section

Provides a high-level comparison of .NET remoting and DCOM.
Example Class
Describes a simple class that will be used as the basis for the example code in the tutorial.
Activation Options
Describes the various client-side and server-side activation options in .NET remoting.
Lifetime Management
Discusses how the lifetime of remote objects is managed. Also compares leases, reference counting, and garbage collection as mechanisms for controlling object lifetime.
Serialization and Marshal by Value
Describes how to implement marshal-by-value types and how to control the serialization of marshal-by-value types.
Asynchronous Invocation
Describes how to use asynchronous delegates to invoke methods on a remote object asynchronously. Methods that are class members and methods defined on interfaces are covered.
Extending the Infrastructure
Discusses how the .NET remoting infrastructure can be extended to provide custom behavior and functionality.

Related Sections

Provides advanced tutorials on using Managed Extensions for C++ and interoperating with managed and unmanaged code.
Adding Functionality
Provides links to topics discussing how to write code with Managed Extensions.
Provides links to reference material on keywords, pragmas, compiler and linker options, attributes, and preprocessor directives.
Provides links to samples that show how to use Managed Extensions to write .NET Framework applications.