Remoting 服务器的问题

LYH1977 2003-05-30 11:31:58
Remoting 服务器,怎样才能知道有客户端正连着
...全文
38 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
PoorAngel 2003-06-20
  • 打赏
  • 举报
回复
学习。
lx1920 2003-05-30
  • 打赏
  • 举报
回复
class Server
{
static void Main(string[] args)
{
RemotingConfiguration.Configure(AppDomain.CurrentDomain.BaseDirectory + "server.exe.config");
TrackingServices.RegisterTrackingHandler(new TrackingHandler());
Console.WriteLine("Server ready.");
Console.ReadLine();
}
public static void writestring(string a)
{
Console.WriteLine(a);
}
}

public class TrackingHandler : ITrackingHandler
{

// Notify a handler that an object has been marshaled.
public void MarshaledObject(Object obj, ObjRef or)
{
// Server.writestring("Tracking: An instance of" + obj.ToString() + "was marshaled. The instance HashCode is: " + obj.GetHashCode().ToString());
Console.WriteLine("Tracking: An instance of {0} was marshaled. The instance HashCode is: {1}", obj.ToString(), obj.GetHashCode().ToString());
Console.WriteLine(System.DateTime.Now.ToString());
Console.WriteLine("ObjRef dump:");
if (or.ChannelInfo != null)
{
Console.WriteLine(" -- ChannelInfo: ");
DumpChannelInfo(or.ChannelInfo);
}
if (or.EnvoyInfo != null)
Console.WriteLine(" -- EnvoyInfo: " + or.EnvoyInfo.ToString());
if (or.TypeInfo != null)
{
Console.WriteLine(" -- TypeInfo: " + or.TypeInfo.ToString());
Console.WriteLine(" -- " + or.TypeInfo.TypeName);
}
if (or.URI != null)
Console.WriteLine(" -- URI: " + or.URI.ToString());


// IPrincipal principal = Thread.CurrentPrincipal;

}

private void DumpChannelInfo(IChannelInfo info)
{

foreach(object obj in info.ChannelData)
{
if(obj is ChannelDataStore)
{
foreach(string uri in ((ChannelDataStore)obj).ChannelUris)
Console.WriteLine(" -- ChannelUris:" + uri);
}
}
}

// Notify a handler that an object has been unmarshaled.
public void UnmarshaledObject(Object obj, ObjRef or)
{
Console.WriteLine("Tracking: An instance of {0} was unmarshaled. The instance HashCode is: {1}", obj.ToString(), obj.GetHashCode().ToString());
}

// Notify a handler that an object has been disconnected.
public void DisconnectedObject(Object obj)
{
Console.WriteLine("Tracking: An instance of {0} was disconnected. The instance HashCode is: {1}", obj.ToString(), obj.GetHashCode().ToString());
Console.WriteLine(System.DateTime.Now.ToString());
}

}

上个错了
lx1920 2003-05-30
  • 打赏
  • 举报
回复
class Server
{
static void Main(string[] args)
{
RemotingConfiguration.Configure(AppDomain.CurrentDomain.BaseDirectory + "server.exe.config");
// TrackingServices.RegisterTrackingHandler(new TrackingHandler());
Console.WriteLine("Server ready.");
Console.ReadLine();
}
public static void writestring(string a)
{
Console.WriteLine(a);
}
}

public class TrackingHandler : ITrackingHandler
{

// Notify a handler that an object has been marshaled.
public void MarshaledObject(Object obj, ObjRef or)
{
// Server.writestring("Tracking: An instance of" + obj.ToString() + "was marshaled. The instance HashCode is: " + obj.GetHashCode().ToString());
Console.WriteLine("Tracking: An instance of {0} was marshaled. The instance HashCode is: {1}", obj.ToString(), obj.GetHashCode().ToString());
Console.WriteLine(System.DateTime.Now.ToString());
Console.WriteLine("ObjRef dump:");
if (or.ChannelInfo != null)
{
Console.WriteLine(" -- ChannelInfo: ");
DumpChannelInfo(or.ChannelInfo);
}
if (or.EnvoyInfo != null)
Console.WriteLine(" -- EnvoyInfo: " + or.EnvoyInfo.ToString());
if (or.TypeInfo != null)
{
Console.WriteLine(" -- TypeInfo: " + or.TypeInfo.ToString());
Console.WriteLine(" -- " + or.TypeInfo.TypeName);
}
if (or.URI != null)
Console.WriteLine(" -- URI: " + or.URI.ToString());


// IPrincipal principal = Thread.CurrentPrincipal;

}

private void DumpChannelInfo(IChannelInfo info)
{

foreach(object obj in info.ChannelData)
{
if(obj is ChannelDataStore)
{
foreach(string uri in ((ChannelDataStore)obj).ChannelUris)
Console.WriteLine(" -- ChannelUris:" + uri);
}
}
}

// Notify a handler that an object has been unmarshaled.
public void UnmarshaledObject(Object obj, ObjRef or)
{
Console.WriteLine("Tracking: An instance of {0} was unmarshaled. The instance HashCode is: {1}", obj.ToString(), obj.GetHashCode().ToString());
}

// Notify a handler that an object has been disconnected.
public void DisconnectedObject(Object obj)
{
Console.WriteLine("Tracking: An instance of {0} was disconnected. The instance HashCode is: {1}", obj.ToString(), obj.GetHashCode().ToString());
Console.WriteLine(System.DateTime.Now.ToString());
}


}
ItsToday 2003-05-30
  • 打赏
  • 举报
回复
学习。
JJ77 2003-05-30
  • 打赏
  • 举报
回复
客户端New 一个对象的时候不是知道的吗?

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧