有些函数调用要用char *
然后我用CString::Format(),出现的是乱码~~初学者~大家莫见怪~~

解决方案 »

  1.   

    要将一个char*赋值给unicode的CString,应该先用MultiByteToWideChar,转换为wchar_t*,然后赋给CString
      

  2.   

    char a[100] = "123";
    CString s;
    s = a;
    MessageBox(s);你就这样直接转就能过来
      

  3.   

    char a[] = "fsa";
    USES_CONVERSION;
    CString s = A2W(a);
    or 
    a =  W2A(s);
      

  4.   

    直接赋值吧。让CString自己去处理。
      

  5.   

    你要看具体是什么函数,如果是字符串函数,应该换用UNICODE版本的字符串函数或者通用字符串函数(宏);如果是作为缓冲指针,那么就用GetBuffer/LockBuffer等获取字符串的指针然后强制转换;要根据数据的意义选择不同的方法。