Java实现MSN Messenger聊天
class MSNAdapter extends MsnAdapter { 
  MSNMessenger messenger;  public MSNAdapter(MSNMessenger messenger) {
  this.messenger = messenger;
  }
  /**
  * 某人正在输入信息
  */
  public void progressTyping(
  SwitchboardSession ss,
  MsnFriend friend,
  String typingUser) {
  System.out.println(friend.getLoginName() + "正在输入信息...");
  }
  /**
  * 收到消息的时候执行该方法
  */
  public void instantMessageReceived(
  SwitchboardSession ss,
  MsnFriend friend,
  MimeMessage mime) {
  System.out.print("接收到消息:" + friend.getFriendlyName() + "->");
  System.out.println(mime.getMessage());
  try {
  //发送相同的回复信息给发送者
  messenger.sendMessage(friend.getLoginName(), mime);
  } catch (Exception e) {
  e.printStackTrace();
  }
  }
  /**
  * 登录成功后执行该方法
  */
  public void loginComplete(MsnFriend own) {
  System.out.println(own.getLoginName() + " Login OK");
  }
  /**
  * 登录失败后执行该方法
  */
  public void loginError(String header) {
  System.out.println("Login Failed: " + header);
  }
  /**
  * 好友离线时执行该方法
  */
  public void userOffline(String loginName) {
  System.out.println("USER " + loginName + " Logout.");
  }
  /**
  * 好友上线时执行该方法
  */
  public void userOnline(MsnFriend friend) {
  System.out.println("USER "+friend.getFriendlyName()+" Login.");
  }
  /**
  * 有人加我为好友时执行
  */
  public void whoAddedMe(MsnFriend friend) {
  System.out.println("USER " + friend.getLoginName() + " Addme.");
  try {
  messenger.addFriend(friend.getLoginName());
  } catch (Exception e) {
  e.printStackTrace();
  }
  }

解决方案 »

  1.   

    http://www.dvpx.com/(cfn1xle2sdynev55rf2coe45)/index_article_display.aspx?Fid=4&id=4http://www.pc021.net/institute/programes/yuyan/200412/135_3.html
      

  2.   

    非常感谢,已经收了。
    不过我更想知道的是MSN收“新邮件信息”的功能,那是不是应该和这个不太一样啊?
      

  3.   

    我觉得应该把数据存放到一个数据库中(SQL SERVER  或者oracle 之类的 ),客户端或者管理员端读取表中的数据(表里面有一个字段表示该消息有没有被读取),客户端可以用一个程序定时的查询服务器数据库中表的记录,对没有读取的记录显示出来。
    客户端可以用DELPHI 或者VB 实现,(访问网络数据库嘛)~~
      

  4.   

    客户端可以用一个程序定时的查询服务器数据库中表的记录.恩,我也觉得这样做是比较简单的,毕竟要求的不是实时性的。
    可是用什么做呢?DELPHI是一点都不了解,VB就知道一点点,我就会点Jsp,所以对Java相对熟一点点,不过纯Java的东西我也一点没做过,所以不知道用Java可不可以实现,希望Java的高手指点以下可行性,如果行就准备用Java了。
      

  5.   

    请问高手:如果用java做的话,做成一个可执行程序难度大吗(当然是对我这种菜菜来说)?比如说要做成开机自动运行,自动登录。要是行的话我就准备开工了