tcp方式的服务器端都是随等待时接收客户端的数据.
如果很多c端同时向服务器端传递数据.服务器端保存数据为文件.怎样确保服务器端创建文件时,按照每个c端的连接来产生正确的文件号呢?我的服务器端总出现 实时错误52 错误的文件名或号我知道服务器端用socket数组,服务器端能自动将每个c端发送的数据放到正确的文件号中么?应该怎样写?

解决方案 »

  1.   

    文件号?
    你没次写完关闭就可以了
    用freefile来获取空闲的文件号阿
      

  2.   

    完成读写需要关闭文件Close #FileNumber
      

  3.   

    这个我清楚.
    关键是N多个c端向服务器端传递数据时,服务器端应该怎样写呀?
    当然,写文件的时候不可能关闭文件号的.
    况且服务器端是创建不同的N个文件呀.
      

  4.   

    我的意思是,服务端能否正确得讲数据put到正确得freefile中?
    我程序出现52号错误.给我感觉就是数据不能放到相对应的freefile中.
    请教各位,怎么写?我是将freefile付给property let内的一个变量
      

  5.   

    晕死
    你难道是多线程
    不关怎么样你就算有再多个socket连接对vb来说还是一个线程
    你关闭了文件每事的
    没次打开关闭就可以了这样就不会有错误了
      

  6.   

    你服务器建一个map.
    private type map
        socketid as long
        filenum as long
    end typedim maptable() as map每次建立连接的时候.
    redim preserve maptable(ubound(maptable)+1)
    maptable(ubound(maptable)+1).socketid = xxx   '不记得了, 总之是连接的时候穿的那个id
    maptable(ubound(maptable)+1).filenum = freefile()当然你可以在map中加一个flag表示是否使用,如果close的时候就把他为false, 然后可循环使用