服务端代码:
using System;
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels;
using System.Runtime.Remoting.Channels.Tcp ;
namespace server
{
/// <summary>
/// HS 的摘要说明。
/// </summary>
public class HS
{
[STAThread]
public static void Main()
{
try
{
// 注册tcp服务器
TcpServerChannel channel =new TcpServerChannel(8989);
ChannelServices.RegisterChannel(channel);
// 类型服务信息
Type t=typeof(bsns.Class1);
WellKnownServiceTypeEntry wkst = new WellKnownServiceTypeEntry(t, "bsns", WellKnownObjectMode.SingleCall);
// 注册remoting服务的类型
RemotingConfiguration.ApplicationName = "bsns";
RemotingConfiguration.RegisterWellKnownServiceType(wkst);
Console.WriteLine ("hit to exit");
Console.ReadLine();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
Console.WriteLine (ex.Source);
Console.ReadLine();
}
}
}
}
客户端代码:
using System;
namespace client
{
/// <summary>
/// Class1 的摘要说明。
/// </summary>
class HC
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main(string[] args)
{
try
{
// 通过服务获取一个(代理)业务对象
bsns.Class1 obj = (bsns.Class1)Activator.GetObject(typeof(bsns.Class1), "tcp://localhost:8989/bsns");
if(obj==null)
{
Console.WriteLine ("FAILED!");
}
else
{
Console.WriteLine(obj.hi());
}
Console.ReadLine();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
Console.WriteLine(ex.Source);
Console.ReadLine();
}
}
}
}
业务代码:
namespace bsns
{
class Class1 : MarshalByRefObject
{
public string hi()
{
return "hello World!";
}
}
}
using System;
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels;
using System.Runtime.Remoting.Channels.Tcp ;
namespace server
{
/// <summary>
/// HS 的摘要说明。
/// </summary>
public class HS
{
[STAThread]
public static void Main()
{
try
{
// 注册tcp服务器
TcpServerChannel channel =new TcpServerChannel(8989);
ChannelServices.RegisterChannel(channel);
// 类型服务信息
Type t=typeof(bsns.Class1);
WellKnownServiceTypeEntry wkst = new WellKnownServiceTypeEntry(t, "bsns", WellKnownObjectMode.SingleCall);
// 注册remoting服务的类型
RemotingConfiguration.ApplicationName = "bsns";
RemotingConfiguration.RegisterWellKnownServiceType(wkst);
Console.WriteLine ("hit to exit");
Console.ReadLine();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
Console.WriteLine (ex.Source);
Console.ReadLine();
}
}
}
}
客户端代码:
using System;
namespace client
{
/// <summary>
/// Class1 的摘要说明。
/// </summary>
class HC
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main(string[] args)
{
try
{
// 通过服务获取一个(代理)业务对象
bsns.Class1 obj = (bsns.Class1)Activator.GetObject(typeof(bsns.Class1), "tcp://localhost:8989/bsns");
if(obj==null)
{
Console.WriteLine ("FAILED!");
}
else
{
Console.WriteLine(obj.hi());
}
Console.ReadLine();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
Console.WriteLine(ex.Source);
Console.ReadLine();
}
}
}
}
业务代码:
namespace bsns
{
class Class1 : MarshalByRefObject
{
public string hi()
{
return "hello World!";
}
}
}