我在VC里面调了一个网络服务。
那个服务返回了一个String
现在我想显示出来 不知道这个String怎么转换为CString 
最好有代码给我看看 然后顺便问问 BSTR 和CString的转换关系

解决方案 »

  1.   


    是String 不是string
    是System::String
      

  2.   

    BSTR是指向字符串的32位指针,可以强制转化为char*
    那CString应该可以直接format  BSTR或者起码(char*)BSTR
      

  3.   

    String 从来没用过,刚查了下。
    The String structure depicts the organization of data in a file-version resource. It contains a string that describes a specific aspect of a file, for example, a file's version, its copyright notices, or its trades. 
    是个结构体,貌似就是VC6里面资源最后面的那个东西嘛。
    struct String { 
      WORD   wLength; 
      WORD   wValueLength; 
      WORD   wType; 
      WCHAR  szKey[]; 
      WORD   Padding[]; 
      WORD   Value[]; 
    }; 
    WCHAR  szKey[]; 键值
    WORD   Value[]; 值。
      

  4.   

    服务器返回CString? 返回的是一段 缓冲区,如果你知道它是String
    则 
     BYTE buffer //收到的内容
    string sss = (string)buffer.
    或则调试看内从,看字符串从哪开始的,算出偏移值string(c++) sss = (char*)(buffer + 偏移) 就得到了字符串如果你不知道是什么 先看内存吧.
      

  5.   

    http://msdn.microsoft.com/zh-cn/library/system.string%28VS.80%29.aspx
    是这个
      

  6.   


    我让我没表示清楚我调用的是个WebServers 接口函数返回String
      

  7.   

    现在我知道了
    String到CString就是Format就可以了。实在是太菜了。