解决方案 »

  1.   

    在Unicode工程下,strPara的内容也是Unicode编码,web服务器是不接受的,需要用WideCharToMultiByte转换成UTF8字符串再发送
      

  2.   


    CStringA UTF16ToUTF8(LPCWSTR wszUTF16)
    {
    //先获取转换后需要的缓冲区大小
    DWORD nszLen = WideCharToMultiByte(CP_UTF8, NULL, wszUTF16, -1, NULL, NULL, NULL, NULL); CStringA strUTF8;
    nszLen = WideCharToMultiByte(CP_UTF8, NULL, wszUTF16, -1, strUTF8.GetBuffer(nszLen), nszLen, NULL, NULL);
    strUTF8.ReleaseBuffer(); return strUTF8;
    }
    用法:CStringA strData = UTF16ToUTF8(strPara);
     pFile -> SendRequest(strHeaders, (LPVOID)(LPCTSTR)strData, strData.GetLength());