我想使用CSocket及CSocketFile,CArchive来循环传递文件。
我的问题是,CSocketFile与CSocket相关联
CArchive与CSocketFile相关联,
那么谁和要传的文件打交道。
是不是使用CSocketFile的OPEN函数?
有没有具体的代码,我想看看,只要实现具体功能就行,多谢

解决方案 »

  1.   

    http://www.vckbase.com/document/viewdoc.asp?id=321
      

  2.   

    服务器方(SERVER) 客户方(CLIENT)
    1、构造一个套接字 1、构造一个套接字
    CSocket ser_s1; CSocket cli_s;2、创建该套接字 2、创建该套接字
    ser_s1.Create (port) ; cli_s.Create ( ) ;
    其中,port为服务器方打开
    的通信通道号3、开始监听来自客户机的连接
    ser_s1.Listen( );3、客户机方套接字cli_s向服务器方
    套接字ser_s1发出连接请求 
    cli_s .Connect (Addr,port);
    (其中,Addr是欲连接服务器方
    套接字地址结构指针,可采用IP地
    址或机器名。port即打开的通道号,
    其值与服务器方的一致。)4、构造一个新的套接字
    Csocket ser_s2 ;
    5、服务器等待从ser_s2上
    接受客户连接请求
    ser_s1.Accept (ser_s2) ;6、构造一个类CSocketFile的对象 4、构造一个类CSocketFile的对象
    CSocketFile file(&ser_s2) ; CSocketFile file(&cli_s) ;7、构造类CArchive的对象arIn、arOut 5、构造类CArchive的对象arIn、arOut
    ,以用于数据的收和发。 ,以用于数据的收和发。
    CArchive arIn(&file , CArchive ::load) ; CArchive arIn(&file , CArchive ::load) ;
    CArchive arOut(&file , CArchive ::store) ;CArchive arOut(&file , CArchive ::store) ;8、使用arIn和 arOut 进行收或发数据 6、使用arIn和 arOut 进行发或收数据
    arIn >> value ; arOut << value ;
    arOut << value ; arIn >> value ;
    其中,value是所传输的数据9、摧毁所创建的CSocket、 7、摧毁所创建的CSocket、
    CSocketFile 、CArchive 等类的对象 CSocketFile 、CArchive 等类的对象
    图4 使用Visual C++ 4.0进行Windows Sockets应用程序开发的基本步骤
      

  3.   

    小白,那段程序只是传递一个变量啊arIn >> value 
    不是文件。难道要用循环?太麻烦了吧