我现在的程序是VB+SQL2000,现在要实现一个功能类似于即时通讯的群聊:
具体要求如下:
    各个客户端,会输入一些信息,然后在SQL上保存,并且每个人输入的信息要在所有的客户端上都能够显示.大家能否提供个思路?能否避免用WINSOCK控件?

解决方案 »

  1.   

    可能避免不了使用winsock。这个板块有人发布了这种即事通信的代码,你可以找一下。
      

  2.   

    就是考虑能简单点最好,最好不用服务器端,因为如果一用WINSOCK的话估计服务器端是必不可少的了.我想用客户端程序定时扫描数据库,看看有没有新消息,如果有就显示.但是如果用这种定时扫描的话,我怕效率是低的不可想象......虽然我的数据库是在局域网内的,但是,有一部分客户端要从外网访问的,如果用上面的方案,从外网访问的话,那效率就更不可想象了~:(矛盾中,请各位大侠帮忙出出主意~
      

  3.   


    这还不简单,不需要winsock
    一个adodc就搞定了
      

  4.   

    楼主的这个问题,我曾经做过,也就是在数据库中建了一个消息表,编号是自动的。 客户发消息,首先需知道有多少个客户,例查询客户表的个数,发消息时处自己外,依次向数据库中添加客户消息,每个消息以客户的id为和日期为区别。
     其他客户,用Trim 定时扫描消息表是否有与本客户端相同的id,如果有以时间的顺序,将消息保存在本地的一个*.txt 文件中,(以备重新启动再次加载消息),删除消息表里保存的消息,发送客户端直接把消息保存在本地即可。
     
     这样可以解决,如果有些客户端不在线的时候消息无法收到的问题,但是数据库的负载可能会很大。 以上是本人的思路!