DotNet(C#)下怎样做到类似QQ的消息到来事件的触发?

dongguacha 2005-10-25 11:08:20
如题,即如何获悉有新的消息到来
...全文
276 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
Hatrim 2006-01-06
  • 打赏
  • 举报
回复
是BS架构好象只能是定期刷新了,用ajax吧
Hatrim 2006-01-06
  • 打赏
  • 举报
回复
用Socket异步通信 + 事件
storm2003 2006-01-06
  • 打赏
  • 举报
回复
消息队列
wangsaokui 2005-10-26
  • 打赏
  • 举报
回复
BS架构可以通过WebService来传递信息啊,http协议你总是要用的吧
dongguacha 2005-10-25
  • 打赏
  • 举报
回复
我是指在没有打开聊天窗口的情况下,例如系统信息的到来,也是用SOCKET监听吗
vosov 2005-10-25
  • 打赏
  • 举报
回复
还是不知道楼主在问什么。。。
是关于服务器端和客户端通讯?
cnyifeng 2005-10-25
  • 打赏
  • 举报
回复
使用socket的accept啊。监听端口贝
qdhoso 2005-10-25
  • 打赏
  • 举报
回复
如果是BS架构的,如何来处理呢?
如果这个用户现在是登录状态,就由消息提示(例如:有新邮件);如果不在登录状态,则没有。
请各位高手给个解决方案,谢谢!!!!
wangsaokui 2005-10-25
  • 打赏
  • 举报
回复
msmq只能用在Active Directory的环境中,试想如果不是这个环境,如何把信息写到服务器或对方的MSMQ中呢?这种需求只能用socket,TCP/IP或UDP协议都可以满足
aquariusdeng 2005-10-25
  • 打赏
  • 举报
回复
听起来,确实简单啊
做起来才不是那么回事

建议楼主动手试试
这样能把一个大问题拆分成小的细节问题,再过来跟像wangsaokui(无间道III(MSMVP)) 这样的高手探讨
  • 打赏
  • 举报
回复
也可以使用msmq,消息队列更可靠些
wangsaokui 2005-10-25
  • 打赏
  • 举报
回复
public delegate void dlg_MsgHandler(Msg vipmsg);

public class Msg
{
public event dlg_MsgHandler MsgArrived;

public Msg()
{
........
dlg_MsgHandler msghandle = new dlg_MsgHandler(RaiseEvent);
}

public void RaiseEvent(Msg vipmsg)
{
try
{
MsgArrived(vipmsg);
}
catch {}
}

....................

MsgInstance.MsgArrived += new dlg_MsgHandler(Handle_function);
wangsaokui 2005-10-25
  • 打赏
  • 举报
回复
把消息做成类,在类中添加一个事件,当接收事件的时候就抛出这个事件,把监听做到后台服务中就可以了,比如windows service
sky0003 2005-10-25
  • 打赏
  • 举报
回复
听起来,很简单,但是做的时候要注意些什么呢
lampson123 2005-10-25
  • 打赏
  • 举报
回复
监听端口吧
cnyifeng 2005-10-25
  • 打赏
  • 举报
回复
系统信息,你是指什么样的系统信息。
可以参考wmi的实现,wmi里面有监听机制,可以在发生某个事件的时候激活方法

110,535

社区成员

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

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

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