100分求教!

winxieddd 2004-07-22 10:02:07
http://www.microsoft.com/china/community/Column/62.mspx
的这个程序编译是通过了,但客户端就是收不到消息,不知道为什么。请大家调试一下看看。很急。
...全文
202 16 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
lookydd 2004-08-05
  • 打赏
  • 举报
回复
:O
qqchen79 2004-08-03
  • 打赏
  • 举报
回复
一种比较常用的设计方式是定义一个Client/Server公用的程序集,里面实现双方都需要使用的类或者接口。然后Client和Server都引用这个程序集。
qqchen79 2004-08-03
  • 打赏
  • 举报
回复
>> 是不是在服务器端也要引用客户端的类啊?
不管是服务器或者客户端,只要使用了对方的类,就需要引用程序集。
winxieddd 2004-08-03
  • 打赏
  • 举报
回复
to: qqchen79(知秋一叶 [MS MVP])

老大,我的程序还是收不到消息呀,你有时间的话可以帮我看看吗?
maggiecheung 2004-08-02
  • 打赏
  • 举报
回复
非常感谢--秋叶
maggiecheung 2004-08-02
  • 打赏
  • 举报
回复
知秋一叶大虾,我那个贴子里面你告诉我的加上 formatter provider之后,发生

其他信息: 无法找到程序集 Receiver, Version=1.0.1675.17462, Culture=neutral, PublicKeyToken=null。

这个也是发生在给远程对象的事件添加处理程序的时候。。
是什么原因??是不是在服务器端也要引用客户端的类啊?还是两边都要写成server--client
的样子--在XML的格式里面--把客户端事件处理程序所在的类也作为服务注册一下啊?
应该这么吗。这样就无所谓服务器还是客户端了阿。
winxieddd 2004-07-31
  • 打赏
  • 举报
回复
用的是http呀,不会穿不透防火墙吧?
qqchen79 2004-07-31
  • 打赏
  • 举报
回复
>> 用的是http呀,不会穿不透防火墙吧?
HTTP Client到Server的调用可以穿过防火墙没错,但是Server到Client的回调不行。
cnming 2004-07-31
  • 打赏
  • 举报
回复
Announcer调试通过了

加上几条语句即可

using System;
using System.Timers;
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels;
using System.Runtime.Remoting.Channels.Http;

namespace Distribution_Framework
{
class Announcer
{
InfoCenter infoCenter;

public static void Main(string[] Args)
{
Announcer announcer = new Announcer();
announcer.Run();
Console.WriteLine("开始发送消息");
Console.ReadLine();
}

public void Run()
{
RemotingConfiguration.Configure("Announcer.exe.config");
infoCenter = new InfoCenter();
Timer timer = new Timer(1000);
timer.Elapsed += new System.Timers.ElapsedEventHandler(this.timer_Elapsed);
timer.Enabled = true;
}

private void timer_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{
string msg = "时间: " + DateTime.Now.ToString();
Console.WriteLine("发送消息:" + msg);
infoCenter.Broadcaster += new BroadcastEventHandler(info_Broadcaster); //增加的
infoCenter.Broadcasting(msg);
}

//增加的
private void info_Broadcaster(object sender, BroadcastEventArgs submitArgs)
{
//Console.WriteLine(submitArgs.Message);
}
}
}


但是现在Reciver还是无法接收到消息
qqchen79 2004-07-30
  • 打赏
  • 举报
回复
1) 在你的服务器端把event的InvocationList打印出来,看看Client有没有正确的添加Event Handler。
2) 如果Server和Client之间有防火墙,那么有可能Remoting的Callback不能正常工作。
cnming 2004-07-29
  • 打赏
  • 举报
回复
>>>串行化错误



要允许串行,必须设置一个东东,具体的忘记了,想到了告诉你
winxieddd 2004-07-26
  • 打赏
  • 举报
回复
才一上午,急什么?我都一快一周了。真是不知道哪里错了,而且,我也发信给作者了,就是不见回信。郁闷的要死。
maggiecheung 2004-07-26
  • 打赏
  • 举报
回复
靠一个上午了,还是不行。发封信问问MS??呵呵
maggiecheung 2004-07-26
  • 打赏
  • 举报
回复
这个能编译通过???我按照它的格式修改了我的程序,还是不行啊
还是报那个串行化错误
outspaceman 2004-07-26
  • 打赏
  • 举报
回复
k他

12,166

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 Web Services
社区管理员
  • Web Services社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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