各位大虾帮帮忙,小虾米我刚工作,还在试用期,为了争取表现,自动请缨。才学了一个月vc的我就披挂上阵,没想到快要栽了!
    老大让我用csocket做一个类似于qq的“发送文件”和“接收文件”的类,作为公司内部通讯系统的一个部分。前两天任务下来我才开始看socket方面的资料,现在还是挺迷惘,首先“封装”两个自我是见过n次了,可是到了自己具体去实现,我想不明白,有那么多函数,那么多类(对话框类,CSocket派生类,CMainFrame类),要怎么才能整成一个来,然后想不通是,发送文件是一个客户端和另一个客户端的对话,那么服务器端要怎么编程?难道是把两个客户端同时都当作是服务器端吗?帮帮我!菜鸟小弟感激了!

解决方案 »

  1.   

    要有服务器中转呀!多个客户端通过服务器中转消息,转发各个客户端。
    主要封装3个类就可以了。CMessage发送的消息类,因为CSocket支持CArchive技术
    CClientSocket 客户端
    CServerSocket 服务器通常继承CSocket,并重载虚函数是为在你的程序中做一定的设置,真的目的还是它来完成的。
      

  2.   

    要有服务器中转呀!多个客户端通过服务器中转消息,转发各个客户端。
    主要封装3个类就可以了。CMessage发送的消息类,因为CSocket支持CArchive技术
    CClientSocket 客户端
    CServerSocket 服务器通常继承CSocket,并重载虚函数是为在你的程序中做一定的设置,真的目的还是它来完成的。
      

  3.   

    直到现在我所理解的就是客户端的socket是一定不会监听的,所以它收信息就必须通过receive了,我也只是看过一个客户端和服务器端收发消息的实例才知道这么一点,至于文件怎么传,楼上说的那几个类中要分别定义哪些函数我还是有点模糊。(另外你们不要笑我,我想问一下,服务端的是要封装CMessage类和CServerSocket类而客户端就是CMessage和CClientSocket类吗),如果你们够好心,告诉我里头都得有哪些函数,一个两个也行。
      

  4.   

    http://www.vckbase.com/code/listcode.asp?mclsid=9&sclsid=901
    有很多例子
      

  5.   

    vc知识库我早就去过了,也下了一个叫filetransfer的源代码,但是编译时报错,而且不太能用,谁有代码能不能给发到[email protected],小弟我感激到流泪流鼻涕了!