|
Listing 22-6 extracted from chapter
.NET Remoting
Listing 22-5< > Listing 22-7
This listing can be compiled with the command line: csc.exe /out:Client.exe /target:exe Example_22_6_to_rename_Client.cs /r:Interface.dll Errors: 0 Warnings: 0
Example_22_6_to_rename_Client.cs
using System;
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels;
using System.Runtime.Remoting.Channels.Http;
using RemotingInterfaces;
namespace RemotingClient {
class Program {
static void Main() {
// Create an HTTP channel and register it in the current AppDomain
// (the value 0 means that we delegate the choice of the port
// number to the CLR).
HttpChannel channel = new HttpChannel( 0 );
ChannelServices.RegisterChannel( channel, false );
// Get a transparent proxy on a remote object from its URI.
// Cast this transparent proxy to a reference of type IAdder.
MarshalByRefObject objRef = (MarshalByRefObject)
RemotingServices.Connect(
typeof( IAdder ),
"http://localhost:65100/AddService" );
IAdder obj = objRef as IAdder;
// Invoke a method on the remote object.
double d = obj.Add( 3.0, 4.0 );
Console.WriteLine("Returned value:" + d);
}
}
}
Copyright Patrick Smacchia 2006 2007
|