You Can Visit www.microsoft.com.

解决方案 »

  1.   

    fireseed(Creamdog)兄小看uaiia(蛋壳)先生了 ,他能给300分,
    uaiia(蛋壳)先生当时只有一个三角时,我曾问他如何能给出300分,
    这位蛋壳仁兄不肯透露绝招。大概他是高级用户。
      

  2.   

    我的EMAIL
    [email protected]
    给我发信,我给你个MIS程序,然后你把分给我如何
      

  3.   

    终于找到问题了
    我定义了一个CPtrList;
    然后定义
    // 数据结构(接受线程给分析线程传递的参数)
    typedef struct tag_RECVFORANALYZE
    {
    BYTE    byCmdType;      //指令
    SOCKET  hSocket;      // SOCKET
    char    *strSendText;           //发送的内容
    CString strGUID;      //GUID
    }TAG_RECVFORANALYZE,*LPTAG_RECVFORANALYZE;然后生成
    LPTAG_RECVFORANALYZE pt=new TAG_RECVFORANALYZE;
    pt.byCmdType=1; //delete
    pt.hSocket=socket1;
    pt.strGUID="123";
    pt.strSendText=new char[MAXBUF];
    //问题就出在这里了,因为strSendText不定长,我是不是要用一个MAXBUF来做
    //如果都定义MAXBUF,我定义的是5000。
    //那么一个字节的数据也要挂5000字节的空格到链表上?然后处理完毕必须用delete pt.strSendText和delete pt吧?
      

  4.   

    我来问吧:
    1,如何在一个已经有的数据库中(orical)增加一图形字段(程序实现)
    2,如何访问数据库的图形字段
    3,ODBC,DAO,ADO中该选择那一种更好(针对上面问题)
      

  5.   

    用cstring或者char* 自动调节怎么样?
      

  6.   

    如果都定义MAXBUF,我定义的是5000。那么一个字节的数据也要挂5000字节的空格到链表上?
    是的
    然后处理完毕必须用delete pt.strSendText和delete pt吧?
    是的,要用delete []pt.strSendText清空指针申请的内存
    你定义成CString不就可以了,动态分配内存,析构时自动释放
      

  7.   

    我觉得定义CString肯定是不行的,
    如果是2进制数据里面包含了\0岂不后面的数据丢失
      

  8.   

    如果是处理http,或者是ftp这些发送命令都是文本的就没有问题
    如果是非文本,可以在需要的时候分配,也可以把缓存大小设成MAX,如果内存的需要不大,怎么做都无所谓,要想做的漂亮点,可以做一个类似CString的缓存类,也许网上都能找到类似的东东